1、C语言程序设计复习题新C语言程序设计复习题(选择题)新(总12页)第二部分 选择题1假设整型变量a为2,使b的值为0的表达式是()。A)b=a/2B)b=6-(-a)C)b=a%2D)b=a30:1 提示正确答案为C2.假设x=,a=7,y=,则表达式:x+a%3*(int)(x+y)%2/4的值为()。A)B)C)3D) 提示正确答案为A3.假设a=3,b=4,c=5,则逻辑表达式: !(a+b)+c-1&b+c/2的值是()。A)trueB)falseC)0D)1D 提示正确答案为D4.假设所有变量均为整型,则表达式:(a=2,b=5,b+,a+b)的值为()。A)7B)8C)6D)2B
2、提示正确答案为B5.设整型变量x的值为5,y的值为2,则值为1的表达式是()。A)!(y=x/2)B)y!=x%3C)x0&y=y6.已知a=12,表达式a+=a-=a*=a的值为()。A)144B)-12C)0D)24C 提示正确答案为C6.在下面C语言的函数说明语句中,正确的是()。A)intfun(intx,inty);B)intfun(intx,y);C)intfun(x,y);D) intfun(intx;inty);A 提示正确答案为A7.设有整型变量a,实型变量f,双精度型变量x,则表达式10+b+x*f值的类型为()。A)intB)floatC)doubleD)不能确定C 提示
3、正确答案为C8.若有intk=5;floatx=;则表达式(int)(x+k)的值是()。A)5B)C)7D)6提示正确答案为D9.表达式k=(12. B)+ -+=C) y10:20,z的值为()。A)10B)20C)1D)2B 提示正确答案为B12.若已定义x和y为double类型,则表达式x=2,y=x+10/4的值是()。A)2B)4C)D)C 提示正确答案为C13.sizeof(a+10)的值为()类型。A)intB)float C)double D)char 提示正确答案为A14.已知:intx=1,y=2,z;则执行:z=xy+x:+y,z的值为()。(A)1(B)2(C)3(D
4、)4C 提示正确答案为C15.C语言中,运算对象必须是整型数的运算符是()。A)% B)/ C)%和/D)*A 提示正确答案为A16.若已定义x和y为double类型,则表达式:x=1,y=x+3/2的值是()。A)1B)2C)D)C 提示正确答案为C17.若t为double类型,表达式t=1,t+5,t的值是( )。A)1B)C)D)6C 提示正确答案为C18.在以下一组运算符中,优先级最高的运算符是()。A)=B)=C)%D)&C 提示正确答案为C19.若有以下定义:|chara;intb; floatc; doubled;则表达式a*b+d-c值的类型为()。A)floatB)intC)
5、charD)doubleD 提示正确答案为D20.假设有intx=11;则表达式(x+*1/3)的值是()A)3B)12C)11D)0A 提示正确答案为A21.以下关于运算符优先顺序的描述中,正确的是()。A)关系运算符算术运算符赋值运算符B)逻辑运算符关系运算符算术运算符C)算术运算符关系运算符赋值运算符D)赋值运算符关系运算符算术运算符D 提示正确答案为D22.sizeof(double)是一个()。A)整型表达式B)实型表达式C)不合法的表达式D)函数A 提示正确答案为A23.下面对变量赋初值正确的是()A)inta=b=c=1; B)inta=1,b=c=2;C)inta=1,b=1,
6、c=1; D)inta=b=1,c=2;C 提示正确答案为C24.在C语言中,若以下变量均为int型,则下面程序段的输出结果是()。s=6,u=6;u=s+;u+;printf(%d,u);A)7B)6C)5D)4B 提示正确答案为B25.若有定义:intx=3;doubley;则执行语句y=(double)x;后,变量x的数据类型为()。A)intB)charC)flaotD)doubleA 提示正确答案为A26.若有定义doublex,y;则表达式x=1,y=x+3/2的值为()。A)1B)2C)D)C 提示正确答案为C27.若有定义intx,y,t;则执行语句:x=y=3,t=+x|+y
7、;后,y的值为()。A)不定值B)4C)3D)1C 提示正确答案为C28.若x、i、j和k都是int型变量,则计算下面表达式后,x的值为()。x=(i=4,j=16,k=32)A)4B)16C)32D)52C 提示正确答案为C29.假设所有变量均为整型,则表达式(a=2,b=5,b+,a+b)的值是()。A)7B)8C)6D)2B 提示正确答案为B30.设inta=1,则执行完循环While(a+5);a的值是:A)6B)5C)1D)-264A 提示正确答案为A31.在下列for循环中,其循环次数是()。for(x=1,y=0;(y!=123)&(x4);x+);A)4B)3C)1D)无数多次
8、B 提示正确答案为B32.设x和y均为int型变量,则执行下面的循环后,y的值为()。for(y=1,x=1;y=10)break;if(x%2=1)x+=5;continue;x-=3;A)2B)4C)6D)8C 提示正确答案为C33.执行下面程序段的结果是()。intx=23;doprintf(%2d,x-);while(!x);(A)打印出321(B)打印出23(C)不打出任何内容(D)陷入死循环B 提示正确答案为B34.printf函数中用到格式符%5s,其中数字5表示输出的字符串占用5列,如果字符串长度大于5,则输出按方式()。A)从左起输出该字符串,右补空格B)按原字符长从左向右全
9、部输出C)右对齐输出该字串,左补空格 D)输出错0信息B 提示正确答案为B35.putchar函数可以向终端输出一个( )。A)整型变量表达式值B)实型变量值C)字符串D)字符或字符型变量值D 提示正确答案为D36.请读程序片段:inti=65536;printf(%dn,i);上面程序片段的输出结果是()。A)65536B)0C)有语法错0,无输出结果D)-1B 提示正确答案为B37.在下列程序段中: intx,y;scanf(%3d*2d%d,&x,&y);若输入的数据为:,则x、y的值分别为( )。A)123,456 B)123,678C)12345678D)无法得到正确的值B 提示正确
10、答案为B38.有如下程序,输入数据12345后,y的值是()。#include main() intx; floaty; scanf(%3d%f,&x,&y); (A)(B)(C) (D)B 提示正确答案为B39.有如下程序,若要求a1,a2,c1,c2的值分别为10,20,A,B,正确的数据输入是()。main()inta1,a2;charc1,c2;scanf(%d%d,&a1,&a2);scanf(%c%c,&c1,&c2); (A)1020AB(B)1020AB (C)1020AB (D)1020ABD 提示正确答案为D40.执行下列程序段后,变量a,b,c的值分别是()。 intx=
11、10,y=9; inta,b,c; a=(-x=y+)-x:+y; b=x+; c=y;(A)a=9,b=9,c=9(B)a=9,b=10,c=9(C)a=1,b=11,c=10(D)a=8,b=8,c=10D 提示正确答案为D41.设有语句inta=3;则执行语句a+=a-=a*a后,变量a的值是()。(A)3(B)0(C)9(D)-12D 提示正确答案为D42.在下列选项中,不正确的赋值语句是()。A)t/=5; B)n1=(n2=(n3=0); C)k=i=j;D)a=b+c=1;D 提示正确答案为D43.设x为int型变量,则执行以下语句后,x的值为()。x=10;x+=x-=x-x;
12、A)10B)20C)0D)-20B 提示正确答案为B44.若有inta=1,b=2,c=3,d=4;则表达式:a+ba+:cda+:d 的值是()。A)4B)3C)2D)1C 提示正确答案为C45.以下选项中()是正确的C语言赋值语句。A)x=3,y=5B)a=b=6C)i-;D)y=int(x);C 提示正确答案为C46.设有如下的变量定义: inti=8,k,a,b; unsignedlongw=5; doublex=1,42,y=; 则以下符合C语言语法的表达式是()。A)a=a-=(b=4)*(a=3) B)x%(-3)C)a=a*3=2D)y=float(i)A 提示正确答案为A47
13、.当c的值不为0时,在下列选项中能正确将c的值赋给变量a、b的语句是()。A)c=b=a;B)(a=c)(b=c);C)(a=c)&(b=c);D)a=c=b;C 提示正确答案为C48.在C语言的if语句中,用作判断的表达式为()。A)关系表达式B)逻辑表达式C)算术表达式D)任意表达式D 提示正确答案为D49.以下程序的运行情况是().#inlcudevoidmain()intx=3,y=0,z=0;if(x=y+z)printf(*);elseprintf(#);A)有语法错0不能通过编译B)输出*C)可以通过编译,不能通过连接,不能运行D)输出#D 提示正确答案为D50.若有定义intx
14、,y;下面选项中合法的if语句().A)if(a=b)x+;B)if(a=b)x+;(C)if(ab)x+;(Dif(a=b)x+; A 提示正确答案为A51.运行下列程序并用键盘输入53,48,32后,在屏幕上的内容是()。main()inti,j,k;scanf(%d,%d,%d,&i,&j,&k);if(i50)printf(%d,i);elseif(i40)printf(%d,j);elseif(i30)printf(%d,k);elseprintf(Error);A)53B)48C)32D)ErrorA 提示正确答案为A52.若有inti=10,j=0;并执行下列程序段:switch
15、(i)case9:i+=1;break;case10:case11:i-=2;break;default:j+=3;break;则变量i的正确结果是()。A)13B)10C)11D)8D 提示正确答案为D53.若inti=10,执行下列程序:switch(i)case9:i+=1;case10:case11:i-=1;default:i+=1;则变量i的正确结果是()。(A)10(B)11(C)12(D)9A 提示正确答案为A54.以下程序段的运行结果是()。inta=7,b=8,c=9;if(ab)a=b,b=c;c=a;printf(%d,%d,%dn,a,b,c);A)7,8,7B)7,
16、9,7C)8,9,7D)7,8,9A 提示正确答案为A55.两次运行以下程序,若从键盘上分别输入6和4,则输出结果是()。main()intx;scanf(%d,&x); if(x+5)printf(%dn,x-);A)7和5B)7C)7和4D)6和4B 提示正确答案为B56.下面程序的输出是()。main()inty=9;for(;y0;y-)if(y%3=0) printf(“%d”,-y);continue; A)741B)852C)963D)875421B 提示正确答案为B57.假定所有变量均已正确说明,下列程序段运行后x的值是()。a=b=c=0;x=35;if(!a)x-;else
17、if(b)if(c)x=3; elsex=4;A)34B)4C)35D)3 B 提示正确答案为B58.下面程序的运行结果是()。main()intk=3;if(k+3)printf(%dn,k+);elseprintf(%dn,-k);A)5B)4C)3D)2C 提示正确答案为C59.下面程序的输出结果为()。main()intx=0,a=10,b=20,c=15;if(ab)if(bc)x=1;elsex=2; printf(%dn,x);A)0B)1C)2D)不确定A 提示正确答案为A60.下列程序的输出结果是()。#includemain()inta,b,c;a=1;b=2;c=3;a=
18、(c=ab)&(b=cb)b:c; printf(%d,%d,%dn,a,b,c); A)1,2,3B)0,2,0C)1,2,0D)1,0,0B 提示正确答案为B61.如果有#definef(x,y)x+y及inta=2,b=3;则执行printf(%d,f(a,b)*f(a,b)后的值为()。A)36B)25C)11D)13C 提示正确答案为C62.若#include后面的文件名用双引号括起来,寻找被包含文件的方式是()。A)先按系统设定的标准方式查找,再在当前目录中查找B)先在当前目录中查找,再按系统设定的标准方式查找C)只在当前目录中查找D)只按系统设定的标准方式查找B 提示正确答案为B
19、63.在宏定义#definePI中,用宏名PI代替一个()。A)单精度数B)双精度数C)常量D)字符串D 提示正确答案为D64.执行下面的程序#defineSQR(X)X*Xmain()inta=10,k=2,m=1;a/=SQR(k+m)/SQR(k+m);printf(%dn,a);后,a的值是()。(A)10(B)9(C)1(D)0C 提示正确答案为C65.下面程序的输出结果是()。#include#defineSUB(x,y)(x)*ymain()inta=3,b=4;printf(%dn,SUB(a,b+1);A)12B)16C)15D)13D 提示正确答案为D66.下列程序执行后的
20、输出结果是()。#defineMA(x)x*(x-1)main()inta=1,b=2;printf(%dn,MA(1+a+b);A)6B)8C)10D)12B 提示正确答案为B67.设有以下宏定义:#defineN3#defineY(n)(N+1*n)则执行语句:z=2*(N*Y(5+1);后,z的值为( )。A)30B)72C)48D)54D 提示正确答案为D68.以下程序的输出结果是()。#defineM(x,y,z)x*y+zmain()inta=1,b=2,c=3;printf(%dn,M(a+b,b+c,c+a);A)19B)17C)15D)12D 提示正确答案为D69.一个C程序
21、的组成部分可以是()。A)一个主函数和一至若干个其他函数B)一至若干个主函数C)一个主程序和一至若干个其他函数D)一个主程序和一至若干个子程序A 提示正确答案为A70.以下叙述正确的是()。A)在C程序中,main函数必须位于程序的最前面B)C程序的每行中只能写一条语句C)C语言本身没有输入输出语句D)在对一个C程序进行编译的过程中,可发现注释中的拼写错C 提示正确答案为C71.C语言规定,C程序执行的开始处为()。A)源程序中排列在最前面的函数B)一个指定的系统库函数C)用户指定的一个特定函数D)程序的主函数 D 提示正确答案为D72.一个C程序的执行是从()。A)本程序的main函数开始,
22、到main函数结束B)本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C)本程序的main函数开始,到本程序文件的最后一个函数结束D)本程序文件的第一个函数开始,到本程序main函数结束A 提示正确答案为A73.一个C语言程序是由()组成。A)一个函数B)一个或若干个函数C)一个过程(D)一个过程或若干个过程B 提示正确答案为B74.下列说法中提示的是()。A)程序的执行总是从主函数开始。B)主函数可以调用任何非主函数的其它函数C)任何非主函数可以调用其它任何非主函数D)程序可以从任何非主函数开始执行D 提示正确答案为D75.C程序的基本单位是()。A)函数B)过程C)语句D)子程序
23、A 提示正确答案为A76.C语言规定:在一个源程序中,main函数的位置()。A)必须在最开始 B)必须在系统调用的库函数的后面C)可以任意 D)必须在最后C 提示正确答案为C77.下列四组选项中,均不是C语言关键字的选项是()。A)defineB)getc C)includeD)whileIF charscanfgotypeprintfcasepowA 提示正确答案为A78.以下叙述不正确的是()。A)一个C源程序可由一个或多个函数组成 B)一个C源程序必须包含一个main函数C)C程序的基本组成单位是函数 D)在C程序中,注释说明只能位于一条语句的后面D 提示正确答案为D79.语言中的标识符只能由字母、数字和下划线三种字符组成,且第一个字符()。
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1