二级c试题.pdf
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《二级c试题.pdf》由会员分享,可在线阅读,更多相关《二级c试题.pdf(90页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、一、二级笔试题目1.以下叙述中正确的是(C)A.用 C 程序实现的算法必须要有输入和输出操作B.用 C 程序实现的算法可以没有输出但必须要有输入C.用 C 程序实现的算法可以没有输入但必须要有输出D.用 C 程序实现的算法可以既没有输入也没有输出2.C 语言规定:在一个源程序中,main函数的位置(B)A.必须在最开始B.必须在系统调用的库函数的后面 C.可以任意 D.必须在最后3.以下叙述正确的是(A)A.构成C程序的基本单位是函数 B.可以在函数中定义另一个函数C.mian()函数必须放在其他函数之前D.所有被调用的函数一定要在调用之前进行定义4.以下叙述正确的是:(B)A.C语言的源程序
2、不必通过编译就可以直接运行B.C 语言中的每条可执行语句最终都被转换成二进制的机器指令c.C 源程序经编译形成的二进制代码可以直接运行D.C 语言中的函数不可以单独进行编译5.用 C 语言编写的程序(B)A.可立即执行 B.是一个源程序 C.经过编译即可执行D.经过编译解释才能执行6.结构化程序有三种基本结构组成,三种基本结构的算法(A)A.可以完成任何复杂的任务 B.只能完成部分复杂的任务C.只能完成符合结构化的任务D.只能完成一些简单的任务7.在一个C 程序中(B)A.用户标识符中可以出现下划线和减号B.用户标识符中不可以出现减号,但可以出现下划线C.用户标识符中可以出现下划线,但不可以放
3、在开头D.用户标识符中可以出现下划线和数字,它们都可以放在开头8.以下合法的用户标识符是(B)A.long B._2Test C.3Dmax D.A.dat9.以下不能定义为用户标识符的是(D)A.Main B.0 1 C.int D.sizeof10.以下叙述中错误的是(A)A.用户所定义的标识符允许使用关键字B.用户所定义的标识符应尽量做到“见名知意”C.用户所定义的标识符必须以字母或下划线开头D.用户定义的标识符中,大、小写字母代表不同标识11.以下叙述中正确的是(D)A.C 语言中既有逻辑类型也有集合类型 B.C 语言中没有逻辑类型但有集合类型C.C 语言中有逻辑类型但没有集合类型 D
4、.C 语言中既没有逻辑类型也没有集合类型12.以下定义语句中正确的是(C)A.char a=Ab=B;B.float a=b=10.0;C.inta=10,*b=&a;D.flaot*a,b=&a;13.以下选项中可作为C 语言合法常量的是(A)A.-80.B.-080 C.-8el.O D.-80.0e14.以下选项中不属于C 语言的类型的是(D)A.signed short int B.unsigned long int C.unsigned intD.long short15.以下选项中可以作为C 语言中合法整数的是(C)A.10110B B.0386 C.OXffa D.x2a216.
5、以下选项中合法的实型常量是(C)A.5E2.0 B.E-3 C.2E0 D.1.3E17.以下选项中,不能作为合法实型常量的是(B)A.1.234e04 B.1.234e0.4 C.1.234e+4D.1.234e0、18.已知W 的 ASCH码值是65,的 ASCII码值是9 7,则八进制表示的字符型常量NOV是(A)A.W B.9 C.e D.非法的常量1 9.已经定义ch为字符型变量,以下赋值语句中错误的是(A)A.ch=;B.ch=62+3;C.ch=NULL;D.ch=,xaa,;2 0.已经定义c 为字符型变量,则下列语句中正确的是(C)A.c=,97,;B.c=97”;C.c=9
6、7;D.c=”a”;21.以下选项中,非法的字符常量是(C)A.t B.17 C.n D.xaa22.语句 printf(“abre,hiyboun);的输出结果是(C)A.abrehiybou B.abrehiybou C.rehiyouD.abrehiyou23.C 语言中运算对象必须是整型的运算符是(A)A.%=B./C.=D.0;26.以下选项中非法的表达式是(D)A.0=x=k B.-k+C.k%int(f)D.k=f=m30.有以下定义语句double a,b;int w;long c;若各变量已正确赋值,则下列选项中正确的表达式是(C)A.a=a+b=b+B.w%(int)a+b
7、)C.(c+w)%(int)aD.w=a=b;31.以下选项中,与 k=n+完全等价的表达式是(A)A.k=n,n=n+l B.n=n+l,k=n C.k=+n D.k+=n+l32.若变量已经正确定义并赋值,下面符合C 语言语法的表达式是(B)A.a:=b+l B.a=b=c+2 C.intl8.5%3D.a=a+7=b+c33.若以下选项中的变量已正确定以,则正确的赋值语句是(C)A.xl=26.8%3 B.l+2=x2 C.x3=0 xl2 D.x4=l+2=334.假定x 和 y 为 double型,则表达式x=2,y=x+3/2的值是(D)A.3.500000B.3C.2.00000
8、0D.3.0000003 5.设 a 和 b 均为double型,且 a=5.5、b=2.5,则表达式(int)a+b/b的值是(D)A.6.500000 B.6 C.5.500000 D.6.00000036.设变量x 为 float型且已经赋值,则下列语句中能够将x 中的数值保留到小数点后两位,并将第三位四舍五入的是(B)A.x=x*100+0.5/100.0 B.x=(x*100+0.5)/100.0C.x=(int)(x*100+0.5)/100.0 D.x=(x/l 00+0.5)*100.037.设有以下变量定义,char w;int x;float y;double z;并已赋确
9、定的值,则表达式w*x+z-y所求得的数据类型为38.以下不能正确计算代数式值的C 语言表达式是(A)A.l/3*sin(l/2)*sin(l/2)B.sin(0.5)*sin(0.5)/3C.pow(sin(0.5),2)/3 D.l/3.0*pow(sin(1.0/2),2)3x39.与数学式子对应的C 语言表达式是(C)A.3*xAn(2*x-l)B.3*x*n(2*x-1)C.3*pow(x,n)*(l/(2*x-l)D.3*pow(n,x)/(2*x-l)40.设有定义:floata=2,b=4,h=3;以下C 语言表达式与代数式计算结果不相符的是(B)A.(a+b)*h/2 B.(
10、1/2)*(a+b)*h C.(a+b)*h*l/2D.h/2*(a+b)4 1.若 x 和 y 代表整型数,以下表达式中不能正确表示数学关系|x-y|10 的 是(C)A.abs(x-y)-10&x-y10 C.!(x-y)10D.(x-y)*(x-y)1004 2.已知i、j、k为int型变量,若从键盘输入1,2,3 回车,使i的值为1、J的值为2、k的值为3,以下选项中正确的输入语句是(C)A.scanfft%2d%2d%2d,&i,&j,&k);B.scanf(M%d%dC.scanf(“d,%d,%d”,&i,&j,&k);D.scanf(ui=%d,j=%d,k=%d,&i,&j,
11、&k);43.有以下程序main()int m,n,p;scanf(ttm=%dn=%dp=%d,&m,&n,&p);printf(u%d%d%dn,m,n,p);若想从键盘上输入数据,使变量m中的值为123,n中的值为456,p中的值为7 8 9,则正确的输入是(A)A.m=123n=456p=789 B.m=123 n=456 p=789C.m=123,n=456,p=789 D.123 456 78944.以下程序运行时若从键盘输入:10 20 30 回 车 输 出 结 果 是10300#includemain()int m=0,n=0,p=0;scanf(w%d%*d%d,feni,&
12、n,&p);printf(4%d%d%dn,m,n,p);45.若有以下程序段int m=O,n=O;char c=,a,;scanf(M%d%c%dw,&m,&c,&n);printf(t%d,%c,%dn,m,c,n);若从键盘上输入:10A10 回车,则输出结果是(A)A.10,A,10 B.16,A,10 C.10,a,0 D.10,A,046.设有定义:longx=123456L;则以下能够正确输出变量x 值的语句 是(B)A.printf(wx=%dn,x);B.printf(Mx=%ldnw,x);C.printf(ux=%8dLnw,x);D.printf(ux=%LDnw,x
13、);47.有以下程序#include stdio.h”main()char cl=l,c2=2;cl=getchar();c2=getchar();putchar(cl);putchar(c2);当运行时输入:a 回车后,以下叙述正确的是(A)A.变量c l被赋予字符a,c2被赋予回车符B.程序将等待用户输入第2 个字符C.变量c l被赋予字符a,c2中仍是原有字符2 D.变量c l被赋予字符a,c2中将无确定值48.已知字母A 的ASCII码为6 5,以下程序运行时若从键盘输入:B33 回车,则输出结果是1B#include stdio.h”main()char a,b;a=getchar(
14、);scanf(%d”,&b);a=a-A+O;b=b*2;printf(n%c%cnn,a,b);4 9.以下叙述中正确的是(B)A.调用printf函数时,必须要有输出项B.使用putchar函数时,必须在之前包含头文件stdio.hC.在C语言中,整数可以以十二进制、八进制或十六进制的形式输出D.调用getchar函数读入字符时,可以从键盘上输入字符所对应的ASCII码5 0.若有以下程序段int m=0 xabc,n=0 xabc;m-=n;printf(Xn,m);执行后输出的结果是(C)A.0X0 B.0 x0 C.0 D.OXABC51.以下程序的功能是:给r输入数据后计算半径为
15、r的圆面积s.程序在编译时出错.出错的原因是(D)main()/*Beginning*/int r;float s;scanf(,%d,&r);s=p*r*r;printf(,s=%fn,s);A.注释语句书写位置错误 B.存放圆半径的变量r不应该定义为整型C.输出语句中格式描述符非法 D.计算圆面积的赋值语句中使用了非法变量5 2.有以下程序main()char al=M,a2=,m,;printf(%cn,(al,a2);以下叙述中正确的是(B)A.程序输出大写字母MB.程序输出小写字母mC.格式说明符不足,编译出错D.程序运行时产生出错信息53.以下程序运行后的输出结果是(A)main(
16、)int x=0210;printf(,%Xn,x);A.88 B.105 C.D2 D.d254.以下程序运行后的输出结果是(C)main()char c;int n=100;float f=10;double x;x=f*=n/=(c=50);printf(n%d%fn,n,x);A.2,20 B.2 20 C.2 20.000000 D.2,20.00000055.有以下程序main()int m=12,n=34;printf(,%d%d,m+,+n);printf(,%d%dn,n+,+m);程序运行后的输出结果是(A)A.12353514 B.12353513 C.12343514D
17、.1234351356.有以下程序#include main()char cl,c2,c3,c4,c5,c6;scanf(rr%c%c%c%cr,&cl,&c2,&c3,&c4);c5=getchar();c6=getchar();putchar(cl);putchar(c2);printf(rr%c%cnn,c5,c6);程序运行后,若从键盘输入(从第1 列开始)123 回车45678 回车则输出结果是(D)A.1267B.1256C.1278D.124557.设有如下程序段:int x=2002,y=2003;printf(,%dn,(x,y);则以下叙述中正确的是(D)A.输出语句中格式
18、说明符的个数少于输出项的个数,不能正确输出B.运行时产生出错信息 C.输出值为2002 D.输出值为200358.有以下程序main()int x=102,y=012;printf(“2d,%2dnM,x,y);)执行后输出的结果是(C)A.10,01 B.02,12 C.102,10 D.02,1059.有以下程序main()int x=0256,y=256;printf(“O%On”,x,y);执行后输出的结果是(C)A.0256 0400 B.0256 256 C.256 400 D.40040060.设有以下程序,以 下 说 法 正 确 的 是(C)main()int a=5,b=0,
19、c=l;if(a=b+c)printf(u*n);else printf(“$n);A.有语法错不能通过编译B.可以通过编译但不能通过连接C.输出*D.输出$6 1.有以下程序main()int a,b,d=25;a=d/10%9;b=a&(-l);printf(,%d,%dn,a,b);程序运行后的输出结果是(B)A.6,1 B.2,1 C.6,0 D.2,06 2.有以下程序main()int i=l,j=2,k=3;if(i+=l&(+j=3|k+=3)printf(H%d%d%dnn,i,j,k);程序运行后的输出结果是(D)A.1 2 3 B.2 3 4 C.2 2 3D.2 3 3
20、6 3.若整型变量a、b、c、d 中的值依次为:1、4、3、2.则条件表达式 ab?a:cd?c:d的值为(A)A.1 B.2 C.3D.46 4.有以下程序main()int a=O,b=O,c=O,d=O;if(a=l)b=l;c=2;else d=3;printf(r,%d,%d,%d,%dn,r,a,b,c,d);程序执行后的输出结果是(D)A.0,1,2,0 B.0,0,0,3 C.1,1,2,0 D.编译有错65.有以下程序#include main()int x;scanf;if(x=3);else if(x!=10)printf(dn”,x);程序运行时,输入的值在哪个范围才会
21、有输出结果(B)A.不等于10的整数 B.大于3 且不等于10的整数C.大于3 或等于10的整数 D.小于3 的整数66.有以下程序#includemain()int a=l,b=2,c=3,d=0;if(a=1&b+=2)if(b!=2|c-!=3)printf(a)|(m=ab);printf(,%d,%dn,k,m);程序运行后的输出结果是(C)A.0,0 B.0,1 C.1,0 D.1,168.若执行以下程序时从键盘上输入9,则输出结果是(B)main()int x;scanf(%d”,&x);if(x+10)printf(w%dn,x);else printf(u%dnw,x);A.
22、11 B.10 C.9 D.868.当把以下四个表达式用作if语句的控制表达式时,有一个选项与其它三个选项含义不同,这 个 选 项 是(D)A.k%2 B.k%2=1 C.(k%2)!=0 D.!k%2=l69.有以下程序main()int a=5,p;if(p=a!=O)printf(,%d nn,p);else printf(%d nn,p+2);程序运行后的输出结果是 1。70.有以下程序main()int a=4,b=3,c=5,t=0;if(ab)t=a;a=b;b=t;if(abc)printf(%dn”,d);else if(c-l=d)=1)printf(w%d nw,d+l)
23、;else printf(%d n”,d+2);程序运行后的输出结果是(B)A.2 B.3 C.4 D.编译有错,无结果72.有定义语句:int a=L b=2,c=3,x;,则以下选项中各程序段执行后,x 的值不等于3 的 是(C)A.if(ca)x=l;B.if(a3)x=3;else if(ba)x=2;else x=3;C.if(a3)x=3;if(a2)x=2;if(a0)y=l;else if(x=0)y=0;else y=-l;C.y=0;if(x=0)if(x0)y=l;1 x 0 0 x=0 x 0else if(a2)x=2;else x=3;D.if(ab)x=b;if(
24、bc)x=c;if(cO)y=l;else if(x=0)if(xO)y=l;else y=0;else y=-l;else y=-l;74.若从键盘输入5 8,则以下程序输出的结果是 585858main()int x;scanf(tt%d,&x);if(x50)printf(M%d,x);if(x40)printf(M%d,x);if(x30)printf(M%dM,x);75.有以下程序main()int a=0,b=l,c=2;if(!c)c-=3;C)if(!a)c-=l;if(!b)c-=2;printf(%dn,c);程序执行后的输出结果是 176.以下程序运行后的输出结果是(m
25、ain()int a=l,b=2,c=3;if(c=a)printf(,%dn,c);else printf(H%dnn,b);A.2 B.3 C.177.以下程序段中与语句(A)A.if(ab&bc)k=l;else k=0;C.if(a=b)k=0;else if(b0)case l:switch(bb?(bc?l:O):O;功能等价的是B.if(a b|b c)k=l;else k=O;D.if(a b)k=l;else if(bc)k=l;case 1:printf break;case 2:printf(bc);printf(,%dn,d);80.以下程序运行后的输出结果是3ma
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 二级 试题
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内