1、1、只有一个源文献的C程序的执行总是从()。A)main函数开始,到main函数执行完结束B)main函数开始,到源文献最后一个函数执行完结束C)源文献第一个函数开始,到源文献最后一个函数执行完结束D)源文献第一个函数开始,依次运行到main函数执行完结束正确答案是: A你选择的答案是:A 2、C语言程序的三种基本结构是()。A)次序结构、选择结构、循环结构B)选择结构、嵌套结构、循环结构C)递归结构、选择结构、循环结构D)次序结构、递归结构、循环结构正确答案是: A你选择的答案是:A 3、下面均可用作C语言标识符的选项是()。A)else,include,NAME B)a-b,_ab,doC
2、)Int,a_b,_5ab D)5ab,LONG,while正确答案是: C你选择的答案是:C 第二章1、如下选项中,不正确的C语言实型常量是()。A)12. B)0.12 C)5e6.5 D).12正确答案是: C你选择的答案是:C 2、如下选项中,不正确的C语言字符型常量是()。A)a B)a C)101 D)x41正确答案是: B你选择的答案是:B 3、若x、i、j和k都是int型变量,则计算体现式x=(i=2,j=4,k=8)后,x的值是()。A)2 B)4 C)8 D)16正确答案是: C你选择的答案是:C 4、算术运算、赋值运算和关系运算的运算优先级按从高到低依次为()。A)算术运
3、算、赋值运算、关系运算B)算术运算、关系运算、赋值运算C)关系运算、赋值运算、算术运算D)关系运算、算术运算、赋值运算正确答案是: B你选择的答案是:B 5、体现式!x|y=z等效于()。A)(!x)|(y=z)B)!(x|y)=z C)!(x|(y=z)D)!(x|y)=z)正确答案是: A你选择的答案是:A 6、设有语句inta=5;,则执行了语句a+=a-=a*=a;后,变量a的值是()。A)5 B)0 C)25 D)-20正确答案是: B你选择的答案是:C 7、若有阐明语句:intx;,不能正确体现数学关系0x5的C语言体现式是()。A)0x0&x5 D)!(x=5)正确答案是: A你
4、选择的答案是:A 8、若d为double型变量,则逗号体现式d=1,d+5,d+的值是()。A)1.0 B)6.0 C)2.0 D)7.0正确答案是: A你选择的答案是:D 9、在C语言中,定义PI为一个符号常量,正确的定义是()。A)#definePI3.14B)#definePI3.14;C)#includePI3.14D)includePI3.14正确答案是: A你选择的答案是:B 10、下列体现式中,能正确表示y=1的关系是()。A)(y=1)&(y1|y=1.or.y=1|yb)=c B)b+ca正确答案是: A你选择的答案是:A 12、在C语言中,复合赋值运算x*=y+5等价于()
5、。A)x=y+5 B)x=(y+5)*(y+5)C)x=x*(y+5) D)x=x*y+5正确答案是: C你选择的答案是:C 13、如下选项中,与k=n+完全等价的体现式是()。A)k=n,n=n+1 B)n=n+1,k=nC)k=+n D)k+=n+1正确答案是: A你选择的答案是:B 14、执行语句x=(a=3,b=a+)后,x,a,b的值依次为()。A)3,4,2 B)3,2,2 C)2,3,2 D)3,4,3正确答案是: D你选择的答案是:D 15、unsignedint类型的数据的取值范围是()。A)0至255B)0至65535C)-32768至32767D)-128至127正确答案
6、是: B你选择的答案是:B 16、如下程序段执行后的输出成果是()。intk=2,i=2,m;m=(k+=i*=k);printf(%d,%d,m,i);A)8,6 B)8,3 C)6,4 D)7,4正确答案是: C你选择的答案是:C 17、若有如下定义和语句:intu=050,v=0x10,w=10;printf(%d,%d,%dn,u,v,w);则输出的成果是()。A)50,16,10 B)40,16,10C)40,8,10 D)50,10,10正确答案是: B你选择的答案是:B 18、若有阐明:intk=-1;,执行语句printf(%d,%u,k,k);后的输出成果是()。A)-1,-
7、1 B)-1,32767 C)-1,32768 D)-1,65535正确答案是: D你选择的答案是:D 19、判断char型变量c的值是否为小写字母的正确体现式是()。A)a=c=a)&(c=a)&(c=z) D)(a=c)正确答案是: C你选择的答案是:C 20、若有条件体现式(x)?a+:b-,则下列体现式中能完全等价于体现式(x)的是()。A)(x=0) B)(x!=0) C)(x=1) D)(x!=1)正确答案是: B你选择的答案是:B 1、体现式1/2*(3+4+5)的值为()。A)0 B)6 正确答案是: A你选择的答案是:B 2、设有阐明语句:inta=5,b=2;,则执行语句:
8、a=-a|+b;后,b的值是()。A)0 B)1 C)2 D)3正确答案是: C你选择的答案是:C 3、设有阐明语句:inta=5,b=3;,则下面合法的体现式是()。A)(a+5)+ B)45+ C)a+a-+b D)(-b)-正确答案是: C你选择的答案是:C 4、下面均是不合法的整型常量的选项是()。A)0f3,-0xffff,033 B)-028,123,3e5C)-0xdce,025,10,000 D)-0x57ag,-048,e5正确答案是: D你选择的答案是:C 5、设如下变量均为int类型,则值不等于1的体现式是()。A)3/2 B)1/2*2C)2-1%2 D)x=0,x+1
9、,x+1正确答案是: B你选择的答案是:B 6、设有阐明语句:intx;floaty=6.5;,体现式x=(float)(y*3-(int)y)%4)执行后,x的值为()。A)17 B)17.500000 C)17.5 D)16正确答案是: A你选择的答案是:未选 7、若x为double型变量,则逗号体现式x=1,x+5,+x的值是()。A)1 B)6.0 C)2.0 D)1.0正确答案是: C你选择的答案是:C 8、设有定义intx=3,y=4,z=5;,则下列体现式中值为0的是()。A)y%z=y-z B)x=y-z D)x=y-正确答案是: D你选择的答案是:B 第三章1、使用scanf
10、(x=%f,y=%f,&x,&y),要使x,y的值均为1.25,正确的输入是()。A)1.25,1.25 B)1.251.25 C)x=1.25,y=1.25 D)x=1.25y=1.25正确答案是: C你选择的答案是:C 2、有如下程序:main()intx=100,y=-100;x%=y-2/x;y%=x-2*y;printf(x=%d,y=%dn,x,y);程序运行后的输出成果是()。A)x=0,y=100 B)x=100,y=-100 C)x=100,y=100D)x=0,y=-100正确答案是: D你选择的答案是:D 3、设有阐明语句:inta,b;,执行语句scanf(%d,%d,
11、&a,&b);后,若使变量a的值为3,b的值为5,则下面输入正确的是()。A)3,5 B)35 C)3,5 D)3,5正确答案是: C你选择的答案是:C 4、若a是int型变量,b是float型变量,下面正确的输入语句是()。A)scanf(%d%d,&a,&b); B)scanf(%f%f,&a,&b);C)scanf(%d%f,&a,&b); D)scanf(%d%f,a,b);正确答案是: C你选择的答案是:C 5、若有阐明语句:charstr20;,执行scanf(%s,str);语句后,从键盘输入字符串:Guesswhat?则存入数组str中的字符串是()。A)Guess B)Gue
12、sswhat?正确答案是: A你选择的答案是:A 6、下面程序运行后的输出成果是()。main()intx=5;printf(%d,%d,%dn,+x,-x,-x);A)6,5,-5 B)5,4,-5正确答案是: B你选择的答案是:B 7、下面程序运行后的输出成果是()。main()charch=a;ch=ch+A-aprintf(%c,%dn,ch,ch);A)A,65 B)a,97正确答案是: A你选择的答案是:A 8、下面程序运行后的输出成果是()。main()floata=5.64,b=15.6486;printf(%f,%5.2fn,a,b);A)5.64,15.64 B)5.640
13、000,15.65正确答案是: B你选择的答案是:B 9、下面程序运行后的输出成果是()。main()chars10=abcdefg;printf(%-7.5s,%8.6sn,s,s);A)abcde,abcdef B)abcdefg,abcdefg正确答案是: A你选择的答案是:A 第四章1、设有程序段:intx,y,z;x=30,y=40,z=60;while(xy)x+=2,y-=2;z/=2;printf(%d,%d,%d,x,y,z);则此程序段的输出成果为()。A)40,38,30 B)32,28,7 C)30,40,30 D)32,28,7.5正确答案是: C你选择的答案是:C
14、2、设有阐明语句:inta=0,b=5;,则执行if(a=b)printf(Hello!n);语句后,下面正确的选项是()。A)输出成果是:Hello!,并且变量a、b的值相等 B)不会输出Hello!C)输出成果是:Hello!,并且变量a、b的值不等 D)编译时出现错误正确答案是: A你选择的答案是:B 3、执行下面程序段后,变量x的值是()。inta=0,b=5,c=8,x;if(a!=0)x=a;elseif(bc)x=b;elsex=c;A)0 B)5 C)8 D)10正确答案是: B你选择的答案是:B 4、执行下面程序段后,变量ch的值是()。inta=60,b=70,c=80;c
15、harch=C;if(a80)if(b70)if(c60)ch=B;elsech=A;A)C B)B C)A D)没有值正确答案是: A你选择的答案是:C 5、执行下面程序段后,变量a的值是()。inta=1;switch(a)case1:a+=1;case3:a+=2;case5:a+=3;break;default:a+=4;A)2 B)4 C)7 D)11正确答案是: C你选择的答案是:B 6、有程序段:intn=0;don+;while(n=10);则此循环的循环体()。A)不执行 B)执行1次 C)执行2次 D)执行无限次正确答案是: D你选择的答案是:A 7、执行下面循环语句后,则
16、“printf(a);”语句的执行次数是()。inti,j;for(i=0;iy)z=x;x=y;y=z;语句后,x、y、z的值是()。A)x=15,y=20,z=25 B)x=20,y=25,z=25C)x=20,y=25,z=15 D)x=20,y=25,z=20正确答案是: B你选择的答案是:B 10、设有阐明语句:ints,a,b,c;,且a、c均已赋值(c不小于0)。s=a;for(b=1;b=c;b+)s=s+1;则下面与上述程序段功效等价的赋值语句是()。A)s=a+b; B)s=a+c; C)s=s+b; D)s=b+c;正确答案是: B你选择的答案是:C 11、有如下程序:#
17、includemain()inti;for(i=0;i3;i+)switch(i)case1:printf(%d,i);case2:printf(%d,i);default:printf(%d,i);执行后的输出成果是()。A)011122B)012 C)01D)120正确答案是: A你选择的答案是:D 12、设x是整型变量,则while(x)与while(x!=0)是否等价?()。A)是等价 B)不等价正确答案是: A你选择的答案是:B 13、下面程序运行后的输出成果是()。main()inta=1,b=5,c=3,x;if(ab)if(bc)x=2;elsex=4;elsex=6;prin
18、tf(%dn,x);A)2 B)4C)6正确答案是: B你选择的答案是:C 14、下面程序运行后的输出成果是()。main()inti=1,sum=0;while(i=5) sum=sum+i;i=i+1;printf(%dn,sum);A)15 B)10正确答案是: A你选择的答案是:A 15、下面程序运行后的输出成果是()。main()inti=1,t=1;while(i=5)t=t*i;i=i+1;printf(%dn,t);A)24 B)120正确答案是: B你选择的答案是:B 16、下面程序运行后的输出成果是()。main()intx,a=10,b=20,ok=5;if(ab)if(
19、b!=15)if(!ok)x=1;elsex=-1;printf(%dn,x);A)-1 B)1正确答案是: A你选择的答案是:A 17、下面程序运行后的输出成果是()。#includemain()inti;for(i=0;i3;i+)switch(i)case1:printf(%d,i);case2:printf(%d,i);break;default:printf(%d,i);A)012 B)0112正确答案是: B你选择的答案是:B 18、下面程序运行后的输出成果是()。main()intk,t=1,sum=0;for(k=1;k=4;k+)t=t*k;sum=sum+t; printf
20、(%d,sum);A)24 B)33正确答案是: B你选择的答案是:B 19、下面程序运行后的输出成果是()。main()intn=12345,sum=0;while(n)sum+=n%10;n=n/10;printf(%dn,sum);A)15 B)78正确答案是: A你选择的答案是:未选 20、下面程序运行后的输出成果是()。main()inta=7;if(a=8) printf(aaa);elseif(a8)printf(bbb);elseprintf(ccc);A)aaa B)bbbC)ccc正确答案是: A你选择的答案是:B 1、下面程序运行后的输出成果是()。main()inti,
21、j;for(i=1;i=4;i+)for(j=1;j=2*i-1;j+)printf(*);printf(n);A)*B)*正确答案是: A你选择的答案是:A 2、运行下面程序,从键盘输入Thisisabook,其输出成果是()。main()intn=0;charch;while(ch=getchar()!=n)if(ch=s|ch=32)n+;printf(%dn,n);提示:ASCII码值为32的是空格字符A)5 B)16正确答案是: A你选择的答案是:A 3、下面程序运行后的输出成果是()。main()inta=2,b=1,c=0;if(a+|b-&c+)printf(%d,%d,%dn
22、,a,b,c);elseprintf(AAA);A)AAA B)3,1,0正确答案是: B你选择的答案是:B 第五章1、下面的4个数组定义,错误的是()。A)inta5; B)#defineN5C)charch5; D)intn=5,dn;longbN;正确答案是: D你选择的答案是:D 2、若有如下阐明,则数值为4的体现式是()。inta12=1,2,3,4,5,6,7,8,9,10,11,12;chara=a,d=g;A)ad-a B)a4 C)ad-c D)ad-a正确答案是: D你选择的答案是:B 3、设有数组定义:inta32=1,2,3,4,5,6,值为5的数组元素是()。A)a3
23、0 B)a20 C)a02 D)a31正确答案是: B你选择的答案是:D 4、下面的程序中哪一行有错误()。#includemain()floatarray5=0.0; /*第A行*/inti;for(i=0;i5;i+)scanf(%f,arrayi); /*第B行*/for(i=1;i5;i+)array0=array0+arrayi; /*第C行*/printf(%fn,array0); /*第D行*/A)第A行 B)第B行 C)第C行 D)第D行正确答案是: B你选择的答案是:A 5、下面哪个定义与其他三个定义不等价()。A)chars=hello;B)chars=hello;C)ch
24、ars=h,e,l,l,o;D)chars=h,e,l,l,o,0;正确答案是: C你选择的答案是:C 6、若有定义语句:floata34=5;,则下面描述正确的是()。A)只有数组元素a00可得到初值5,其他元素值不确定B)只有数组元素a00可得到初值5,其他元素值为0C)只有数组元素a34可得到初值5,其他元素值为0D)a数组的所有元素都可得到初值5正确答案是: B你选择的答案是:D 7、若有定义语句:inta4=1,3,5,7,9,11,13,15,17;,则a数组的行数是()。A)2 B)3 C)4 D)无确定值正确答案是: B你选择的答案是:B 8、字符串abn1010xy的长度为(
25、)。A)12 B)4正确答案是: B你选择的答案是:A 9、若有数组定义:floata3=1,2,3,1,2,1;,它定义了()个数组元素,数组a所占用的内存字节数为()。若有数组定义:intb10;,它定义了()个数组元素,数组b所占用的内存字节数为()。A)9,36,10,20B)6,24,10,20正确答案是: A你选择的答案是:B 10、下面程序运行后的输出成果是()。main()staticinta3=9,7,5,3,1,2,4,6,8;inti,j,s1=0,s2=0;for(i=0;i3;i+)for(j=0;j3;j+)if(i=j)s1=s1+aij;if(i+j=2)s2=
26、s2+aij;printf(%d,%dn,s1,s2);A)45,20B)18,10正确答案是: B你选择的答案是:A 11、下面程序运行后的输出成果是()。main()inta8=1,2,3,4,5,6,7,8;inti,j,temp;for(i=0,j=7;ij;i+,j-)temp=ai;ai=aj;aj=temp;for(i=0;i8;i+)printf(%2d,ai);printf(n);A)87654321B)12345678正确答案是: A你选择的答案是:B 12、下面程序运行后的输出成果是()。#includemain()inti=0,n=0;inta10=1,3,5,7,9;
27、for(i=4;i=0;i-)ai+1=ai;n+;ai+1=0;n+;for(i=0;iai)x=ai;f(yai)y=ai;printf(%d,%d,x,y);A)2,8B)8,2正确答案是: A你选择的答案是:A 15、下面程序运行后的输出成果是()。#includemain()inti,a9=1,3,4,0,2,4,2,0,4,b5=0;for(i=0;i9;i+)bai+;for(i=0;i5;i+)printf(%2d,bi);A)00000B)21213正确答案是: B你选择的答案是:B 16、下面程序运行后的输出成果是()。main()inti,j,a33=9,8,7,6,5,
28、4,3,2,1;for(i=0;i3;i+)for(j=i+1;j3;j+)aij=0;printf(n);for(i=0;i3;i+)for(j=0;j3;j+)printf(%3d,aij);printf(n);A)900B)007650054321321正确答案是: A你选择的答案是:未选 17、下面程序运行后的输出成果是()。#includemain()inti,j;charstr=development;i=j=0;for(;stri!=0;i+)if(stri!=e)strj=stri;j+;strj=0;printf(%s,str);A)developmentB)dvlopment正确答案是: B你选择的答案是:B 18、下面程序运行后的输出成果是()。#includemain()int