C语言试题2

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

C语言试题2一.填空题1.一个C程序有且仅有一个______main__________函数。2.C程序的执行是从_______main________函数开始执行的。3.C语句的源程序的语句分隔符是________;________。4.C语句的源程序文件的后缀是_________.c__________,经过编译后生成文件的后缀是_______.obj_________,经过链连后生成文件的后缀是_______.exe_________。5.表达式10%3的结果是________1________。6.表达式10/3的结果是______3_________。7.intx=9,y=8;表达式x==y+1的结果是_______1_________。8.执行intx=2,y=3;后表达式x=(y==3)的值是______1_________。79.执行语句inta,b,c;a=(b=c=3,c++,b+=c);则a的值是_______7________。10.以下程序的输出结果是_______c=377________。voidmain(){doublea=365.7189;intb=12,c;c=(int)a+b;printf(c=%d\n,c);}}11.以下程序的输出结果是_____2,1__________。voidmain(){inta=1,b=2;a=a+b;b=a-b;a=a-b;printf(%d,%d\n,a,b);}12.以下程序的执行结果是______c=k________。voidmain(){charc='A'+10;printf(c=%c\n,c);}13.以下程序的输出结果是_____63,100_________。voidmain(){inta=0100,b=100;printf(%d,%d,--a,b++);}14.在ASCII字符集中,字母A的ASCII码值是65,以下程序的输出结果是______67,88________。voidmain(){charc1='B',c2='Y';printf(%d,%d\n,++c1,--c2);}15.要判断一个字符(ch)是小字字母的的C语言的表达式应是______ch=’a’,ch16.要表示一个整数num在10到20之间(包括10和20)的C语言的表达式应是____num=10&&num=0;i--){s=s+a[i]*j;j=j*10;}printf(s=%d\n,s);}20.以下程序执行时输入LanguageProgrammingvoidmain(){charstr[30];scanf(%s,str);printf(str=%s\n,str);}21.执行下面的C程序段后,输出结果是_______15________。intrun(inta,intb){return(a+b);}voidmain(){intx=2,y=5,z=8,r;r=run(run(x,y),z);printf(%d\n,r);}22.执行下面的C程序段后,输出结果是_______120________。intfac(intn){staticintf=1;f=f*n;return(f);}main(){inti,a;for(i=1;iprintf(%d\n,a);}23.有一函数:intf(inta){intb=0;staticintc=2;b=b+1;c=c+1;return(a+b+c);}执行下面的C程序段后,输出结果是_____i=6,j=7__________。voidmain(){inti,j;i=f(2);j=f(2);printf(i=%d,j=%d,i,j);}24.执行下面的C程序段后,输出结果是______hello!_________。main(){chars[80],*sp=HELLO!;sp=strcpy(s,sp);s[0]='h';puts(sp);}25.若有定义:inta[]={1,3,5,7,9,10},*p=a,则*(p+2)的值是____5____。*(a+4)的值是____9____。26.若有定义:inta[]={2,4,6,8,10,12},*p=a,则*(p+1)的值是__4___,*(a+5)的值是___12_____。27.若有定义:inta=8,*p=&a;执行语句*p=12;后,a的值为___12_____。二.单项选择题1.下面是有关C程序的叙述,不正确的是()。A.C程序是用C语言书写和程序。B.C程序的每一行都以分号为结束标志C.C程序中的函数可以是空函数D.C语言本身不具备输入输出语句,但C程序可以有输入输出操作2.下面是有关C程序的叙述,不正确的是()。A.一个C源程序可由一个或多个函数组成。B.一个C源程序必须包含一个main函数C.C程序的基本组成单位是函数D.在C程序中,注释说明只能位于一条语句的后面3.对于一个正常运行的C程序,以下叙述中正确的是()。A.程序的执行总是从main函数开始,在main函数结束。B.程序的执行总是从程序的第一个函数开始,在main函数结束C.程序的执行总是从main函数开始,在程序的最后一个函数结束D.程序的执行总是从程序中的第一个函数开始,在程序的最后一个函数中结束4.以下叙述中错误的是()A.计算机不能直接执行用C语言编写的源程序B.C程序经C编译程序编译后,生成后缀为.obj的文件是一个二进制文件C.后缀为.obj的文件,经连接程序生成后缀为.exe的文件是一个二进制文件D.后缀为.obj和.exe的二进制文件都可以直接运行5.算法具有五个特性,以下选项中不属于算法特性的是()A.有穷性B.简洁性C.可行性D.确定性6.以下叙述中错误的是()A.算法正确的程序最终一定会结束B.算法正确的程序可以有零个输出C.算法正确的程序可以有零个输入D.算法正确的程序对于相同的输入一定有相同的结果7.以下叙述中正确的是()A.用C程序实现的算法必须要有输入和输出操作B.用C程序实现的算法可以没有输出但必须要有输入C.用C程序实现的算法可以没有输入但必须要有输出D.用C程序实现的算法可以既没有输入也没有输出8.下面是有关流程图符号的描述,说法正确的有()A.平行四边形框表示逻辑判断B.菱形框表示计算处理C.矩形框表示算法的开始和结束D.带箭头的线段表示算法操作流程的方向9.以下不合法的用户标识符是()A.j2_KEYB.DoubleC.4dD._g_10.下列选项中,不能用作标识符的是()A.2_int_B.int_2_C._intD._2345_11.按着C语言规定的用户标识符命名规则,不能出现在标识符中的是()A.大写字母B.连接符C.数字字符D.下划线12.在C语言中,合法的字符常数是()A.‘程序设计’B.“程序设计”C.CD.‘\\’13.设有定义:intk=0;,以下选项的四个表达式中与其他三个表达式的值不相同的是()A.k++B.k+=1C.++kD.k+114.下列各变量均为整型,选项中不正确的C语言赋值语句是()A.i+=++i;B.i=j==k;C.i=j+=i;D.i=j+1=k;15.有以下程序:#includevoidmain(){charc1,c2,c3,c4,c5,c6;scanf(%c%c%c%c,&c1,&c2,&c3,&c4);c5=getchar();c6=getchar();putchar(c1);putchar(c2);printf(%c%c\n,c5,c6);}程序运行后,若从键盘输入12345678则输出结果是()A.1267B.1256C.1278D.124516.设变量均已正确定义,若要通过scanf(“%d%c%d%c”,&a1,&c1,&a2,&c2);语句为变量a1和a2赋值数值10和20,为变量c1和c2赋字符A和B,以下所示的输入形式中正确的是()。A.10A20BB.10A20BC.10A20BD.10A20B17.设变量均已正确定义,若要通过scanf(“%d%c%d%c”,&a1,&c1,&a2,&c2);语句为变量a1和a2赋值数值10和20,为变量c1和c2赋字符X和Y,以下所示的输入形式中正确的是()。(注:代表空格字符)A.10X20YB.10X20YC.10XD.10X20Y20Y18.有以下程序#includemain(){charc1=’1’,c2=’2’;c1=getchar();c2=getchar();putchar(c1);putchar(c2);}当运行时输入:aA.变量c1被赋予字符a,c2被赋予回车符B.程序将等待用户输入第2个字符C.变量c1被赋予字符a,c2中仍是原有字符2D.变量c1被赋予字符a,c2中将无确定值19.数学关系式x≤y≤z可用C语言的表达式表示为()A.(x0)y=1;elsey=0;B.if(x=0)if(x0)y=1;elsey=0;elsey=-1;C.y=0;if(x=0)if(x0)y=1;elsey=-1;D.y=-1;if(x0)y=1;elsey=0;26.以下叙述中正确的是()。A.break语句只能用于switch语句体中B.continue语句的作用是:使程序的执行流程跳出包含它的所有循环C.break语句只能用在循环体内和switch语句体内D.在循环体内使用break语句和continue语句的作用相同27.C语言中,while和do-while循环的主要区别是()A.while的循环控制条件比do-while的循环控制条件严格B.do-while的循环体至少无条件执行一次C.do-while允许从外部转到循环体内D.do-while的循环体不能是复合语句28.语句while(!e);中的条件!e等价于?()A.e==0B.e!=1C.e!=0D.-e29.下面有关for循环的正确描述是()。A.for循环只能用于循环次数已经确定的情况B.for循环是先执行循环体语句,后判定表达式C.在for循环中,不能用break语句跳出循环D.for循环体语句中,可心包含多条语句,但要用花括号括号括起来。30.对于for(表达式1;;表达式2)可理解为()。A.for(表达式1;0;表达式2)B.for(表达式1;表达式1;表达式2)C.for(表达式1;1;表达式2)D.for(表达式1;表达式2;表达式2)31.有关二维数组描述正确的是()。A.二维数组在内存中是一个二维表结构B.如果有二维数组a的定义为“inta[2][3]”,则a的长度为5C.二维数组可以看成由若干个一维数组组成的一维数组D.二维数组按列分配各个元素在内存中的地址空间32.以下对一维数组a进行正确初始化的是()。A.inta[4]=(0,0,0,0)B.inta[4]={};C.inta[]={0};D.inta[4]={1,2,3,4,5}33.下列初始化数组正确的是()。A.intx[4]={1,2}B.intx[4]={1,2,3,4,5}C.intx[]={1,2,3,'4'}D.intx[4]=void34.在执行inta[][3]={{1,2},{3,4}};语句后,a[1][2]的值是()。A.3B.4C.0D.235.以下关于数组的描述下确的是()。A.数组的大小是固定的,可以有不同的类型的数组元素B.数组的大小是可变的,但所有数组元素的类型必须相同C.数组的大小是固定的,所有数组元素的类型必须相同D.数组的大小是可变的,可以有不同的类型的数组元素36.在执行inta[][3]={1,2,3,4,5,6};语句后,a[1][0]的值是(A)。A.4B.1C.2D.537.以下对二维数组a进行正确初始化的是(B)。A.inta[2][3]={{1,2},{3,4},{5,6}};B.inta[][3]={1,2,3,4,5,6};C.inta[2][]={1,2,3,4,5,6};D.inta[2][]={{1,2},{3,4}};

1 / 22
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功