福建省C语言二级考试大全-学生_第1页
福建省C语言二级考试大全-学生_第2页
福建省C语言二级考试大全-学生_第3页
福建省C语言二级考试大全-学生_第4页
福建省C语言二级考试大全-学生_第5页
已阅读5页,还剩41页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、福建省计算机等级考试二级C语言选择题大全一、选择题50100在语言中,合法的字符常量是( D )。 A. 字 B. A C.ABC D.x4150101下面叙述正确的是( B )。 A. 程序中必须包含有输入语句 B. 变量按所定义的类型存放数据C.main函数必须位于文件的开头 D.每行只能写一条语句50102错误的叙述是( D )。 A. 一个C语言源程序可由一个或多个函数组成 B. 若一条语句较长,也可分写在下一行上C.C程序必须包含一个main()函数 D.构成C语言源程序的基本单元是算术表达式50103(C)是关于C语言数据类型的正确叙述。 A. 变量必须先定义后使用 B. 不允许使

2、用空类型A叙述是对的,但其不是关于数据类型的叙述!C.枚举类型不是基本类型 D.数组并不是构造类型50104 main( )函数的位置( B )。 A. 必须在自定义函数前面 B. 可以在自定义函数后面C.必须位于程序的最前面 D.必须在自定义函数后面50105 C语言函数体由( C )括起来。 A. B. ( ) C. D. 50106( A )是不正确的叙述。 A. 注释说明只能位于一条语句的后面 B. C源程序的基本组成单元是函数C.C源程序可由一个或多个函数组成 D.每条语句最后必须有一个分号50107一个C语言源程序是由( B )。 A. 一个主程序和若干子程序组成 B. 函数组成C

3、.若干过程组成 D.若干子程序组成记住这个基本概念50108结构化程序设计的三种基本结构是( C )。 A. 函数结构、判断结构、选择结构 B. 平行结构、嵌套结构、函数结构C.顺序结构、选择结构、循环结构 D.判断结构、嵌套结构、循环结构50109C源程序的调试是指对源程序进行( C )。 A. 录入与编辑 B. 查错与编译 C.查错与排错 D.连接与运行50110C语言中,可将一系列语句置于( C )从而构成复合语句。 A. 一对尖括号之间 B. 一对圆括号( )之间C.一对花括号之间 D.一对方框号 之间50111构成C源程序的基本单位是( D )。 A. 语句 B. 变量 C.运算符

4、D.函数50112以下叙述中正确的是( A )。 A. C源程序中注释部分可以出现在程序中任意合适的地方 B. 一对花括号只能作为函数体的定界符C.C源程序编译时注释部分的错误将被发现 D.构成C源程序的基本单位是函数,所有函数名都可以由用户命名main()50113下面叙述正确的是( D )。 A.每行最多只能写两条语句 B. 程序中必需含有自定义函数C.main()函数必须位于源程序文件的开头 D.所有语句都必须以分号;结束50114下面叙述错误的是( B )。 A.若一条语句较长,可分写在下一行或多行上 B.构成C语言源程序的基本单位是语句C.C源程序中大、小写字母是有区别的 D.一个C

5、源程序可由一个或多个函数组成50115( A )是关于C语言数据类型的正确叙述。 A. 枚举类型不是基本类型 B. 数组不是构造类型C.变量使用前应定义相应的数据类型 D.不允许使用空类型50116 C源程序中main()函数的位置( C )。 A. 必须位于程序的最前面 B. 必须在系统库函数后面C.可以在自定义函数后面 D.必须在自定义函数前面50118下面叙述错误的是( D )。 A. C源程序可由一个或多个函数组成 B. C源程序必须包含一个main()函数C.一个C源程序的执行是从main()函数开始,直到main()函数结束 D.注释说明部分只能位于C源程序的最前面50200C语言

6、的下列运算符中,优先级最高的运算符是( A )。 A. + B. += C.| D.!=50201( D )为正确的用户标识符。 A. struct B. 5f C._f 0.6 D._for50202C语言基本数据类型包括( B )。 A. 整型、实型、逻辑型 B. 整型、实型、字符型C.整型、字符型、逻辑型 D.整型、实型、字符串型50203( A )为合法的常量。 A. 52686L B. E-7 C.1.2E-2.1 D.E1250204( C )为正确的变量名。 A. -k15 B. int C.k_5 D.k.jeep50205( D )为正确的字符常量。 A. B. 24m C.

7、c D.M50206( C )为非法的字符串常量。 A. B. s C.efg D.266250207 C语言整型数据在内存中的代码是用( C )表示的。 自学!A. 原码 B. 反码 C.补码 D.BCD码50208以下选项中,合法的实型常数是( B )。 A. E-3 B. .2E1 C.1E.5 D.1.5E50209下列C语言合法的数据类型关键字是( B )。 A. Double B. unsigned C.integer D.Char50210 Turbo C中,int型数据占用的字节数( B )。 A. 由用户自己定义 B. 为2个字节 C.是任意的 D.等于所用计算机的字长502

8、11 Turbo C中,基本数据类型存储空间长度的排列顺序是( A )。 对.类型名 变量字节 取值范围singnedchar 1 -128127ungsigned char 1 0255singned long int 4 -unsiged long int 4 0float 4 -3.4E383.4E38 7个有效位double 8 -1.7E3081.7E308 15个有效位 A. charintlong intfloatdouble B. char=intlong intfloatdoubleC.charintlong int=float=double D.char=int=long

9、intfloat5) printf(%dn,a); else printf(%dn,a-)执行这个,之前a+变为6了; A. 7 B. 4 C.5 D.650501若已定义 float x; 要从键盘输入数据36.582给变量x,则应选用( B )语句。 A. scanf(%2.3f,&x) ; B. scanf(%6f,&x) ; C.scanf(%6.3f,&x) ; D.scanf(%5.3f,&x) ;50502若已定义 double y; 拟从键盘输入一个值赋给变量y,则正确的函数调用是( C )。 A. scanf(%d,&y) ; B. scanf(%7.2f,&y) ; C.s

10、canf(%lf,&y) ; D.scanf(%ld,&y) ;50503已有定义 char s; 使用scanf( )函数输入一个字符给变量s,不正确的函数调用是( D )。 A. scanf(%c,&s) ; B. scanf(%d,&s) ; C.scanf(%u,&s) ; D.scanf(%lf,&s) ;50504函数putchar( ) 的功能是向终端输出( A )。 A. 一个字符 B. 多个字符 C.一个关系表达式 D.一个实型变量值50505若已定义 int a=11; 执行以下语句后的输出结果是( B )。 printf(a=%d,a=%o,a=%xn,a,a,a) ;

11、A. a=11, a=11, a=b B. a=11, a=13, a=b C.a=11, a=13, a=c D.a=11, a=12, a=1350506若有定义 int m=4321,n=123,k=21; 语句printf(%4d+%3d+%2d,m,n,k); 执行后的输出结果是( C )。 A. 121 B. C.4321+123+21 D.432+123+0250507已有如下定义和输入语句, char c1,c2;int x; scanf(%c%d%c,&c1,&x,&c2); 若要求x、c1、c2的值分别为9、K和H,正确的数据输入建议上机实践一下!是( A )。 A. K9

12、H B. K 9 H C.K9 H D.9KH50508以下程序段的运行结果是( B )。 int a=1; printf(%d, %d, %dn, a, +a, a+); 注意printf函数的输出参数是自右向左!A. 3,3,1 B. 2, 2, 1 C.1, 2, 3 D.3, 2, 150509以下程序的运行结果是( D )。 void main() int a=65; char c=A; printf(%d+%c=%dn,a,c,a+c); A. A+A=AA B. 65+A=65 C.65+65=130 D.65+A=13050510若已定义:int x=7;float y=7.0

13、; 以下语句中能输出正确值的是( B )。 A. printf(%d %d,x,y); B. printf(%d %.3f,x,y);C.printf(%.3f %.3f,x,y); D.printf(%.3f %d,x,y);50511putchar函数可以向终端输出一个( A )。 A. 字符或字符型变量值 B. 整型变量表达式值 C.实型变量值 D.字符串50512若已定义:int a=6;float b=1.5; 要求输出形式为: 6 * 1.50=9.00 ,应选用的正确输出语句是( B )。 A. printf(%d * %f=%f,a,b,a*b); B. printf(%d *

14、 %.2f=%.2f,a,b,a*b);C.printf(%d * %d=%.2f,a,b,a*b); D.printf(%.2f * %.2f=%.2f,a,b,a*b);50513若有定义 float x; 要从键盘输入数据6.02赋给x,则应选用( D )语句。 A. scanf(%8.2f,&x); B. scanf(%1.2f,&x); C.scanf(%4.2f,&x); D.scanf(%f,&x);50514 只能向终端输出一个字符的是( D )。 A. printf()函数 B. scanf()函数 C.getchar()函数 D.putchar()函数50515 若有语句

15、int a; char c; scanf(%3d%c,&a,&c); 为将整数135赋给a,字符6赋给c,正确的数据输入方式是( B )。(说明:代表换行,_代表空格) A. 135_6 B. 1356 C.1356 D.135_6_50516 getchar()函数的功能是获取终端输入的( B )。 A. 多个字符 B. 一个字符 C.一个实型变量值 D.一个整型变量表达式50517 若有定义 int a=8,b=5; 要实现输出形式为: 8*5=40 ,正确的printf()函数调用语句是( D )。 A. printf(a*b=%dn,a*b); B. printf(a*b=a*bn);

16、C.printf(%d*%d=a*bn,a,b); D.printf(%d*%d=%dn,a,b,a*b);50518若有定义:char c1=A,c2=B; 语句printf(%d+%d=%d,c1,c2,c1+c2);运行后的结果为( D )。(说明:A的ASCII码的十进制值为65) A. A+B=131 B. 65+66=AB C.A+B=AB D.65+66=13150600有以下程序: main() int c; while(c=getchar()(1) c为字符2,case0开始执行到case2的break,输出字符6和6(2) c为字符4,case2开始执行并break退出,输

17、出字符8(3) c为字符7,default开始执行并退出,输出9!= n) switch(c-2) case 0 : case 1 : putchar(c+4); case 2 : putchar(c+4); break; case 3 : putchar(c+3); default: putchar(c+2); break; printf(n); 当输入:247,程序的输出结果是( B )。 A. 689 B. 6689 C.66778 D.6688750601若已定义 int x=5,y=9,z; 语句 z=x=y;相当于z=(x=y); 运行后z的值为( C )。 A. 1 B. .t.

18、 C.0 D.f.50602判定逻辑值为“真”的最准确叙述是( D )。 A. 1 B. 大于0的数 C.非0的整数 D.非0的数50603若已定义 int x=-16,y=-12,z; 语句z=x=100) & (s300) B. 100= s=100) & (s=100) and (s=b|b=c C.c-b|a+b&(b*c-a-c) D.(b*c-a-c)&(b*c-a-b)A) 3-2=(3/2)B) 3=3C) 3-2|(短路)D) (2*3-2-3) & (短路)50609若已定义:int x=4,y=2,z=0; 则表达式 (x-ybc相当于k=(ab)c)的值是( A )。

19、A. 0 B. 1 C.2 D.350611以下运算符中优先级最高的是( D )。 A. x) | (b=yz); A. 0 B. 1 C.-1 D.650613 x的值在-20至-5之间为“真”,否则为“假”的正确逻辑表达式为( B )。 A. -20x-20 & x-20) & !(x-5) D.-5x-2050614若有定义:int a; 则表达式( B )不能用来判断a值为奇数是“真”,偶数是“假”。 A. a%2=1 B. !(a%2) C.a%2 D.!(a%2=0)50615若有定义:int a=1,b=2,c=3,d=4,t=2,k=2; 语句(t=ab)|(k=cd)短路;

20、运行后,k的值为( A )。 A. 2 B. 1 C.0 D.-50616若有定义:int x=1,y=2,z=3; 则表达式( A )的值为0。 A. !(xy | xz C.x=y D.x| (y+z & y-z)50617若有定义: int a=3,b=5,c=8; 则表达式 !(a-b) | (c-b) 的值为( A )。 A. 1 B. 0 C.2 D.350618若有定义: int a; 且表达式 !a的值为0,则表达式( A )的值为1。 A. a!=0 B. a=0 C.a=0 D.!(a0)50700以下程序运行后,a的值是( C )。 main() int a,b; for

21、(a=1,b=1;a=20) break; if(b%3=1) b+=3; continue; b-=5; 初始a=1;b=1第1次循环:a=1, b=1+3=4 continue第2次循环:a=2, b=b+3=7 continue第3次循环:a=3, b=b+3=10 continue第4次循环:a=4, b=b+3=13 continue第5次循环:a=5, b=b+3=16 continue第6次循环:a=6, b=b+3=19 continue第7次循环:a=7, b=b+3=22 continue第8次循环:a=8,breakA. 101 B. 100 C.8 D.750701已定

22、义 double k=3.6; 则正确的赋值表达式是( D )。 A. k=double(-3.6) B. k%3 C.k=k*(-1.0)=-3.6 D.k+=k-=(k=1.2)*(k=3)50702已定义 char c = A ; 则正确的赋值表达式是( B )。 A. c=02813位8进制数,8越界 B. c=(c+)%4 C.c+1=66 D.c+=127-50703已定义 int m =A; 则正确的表达式是( C )。 A. 2*m=m+ B. m=int(-3.2) C.m%3 D.m=m-m=m-550704设已定义 float a=2.0,b=3.0; 使a值为5.0的表

23、达式是( A )。 A. a+= b B. a*=b+2.0 C.a/=b+2.0 D.a-=b+2.050705若已定义 int m=7;float k=5.5; 则表达式 k+ m%2/4 的值为( D )。 A. 6.375 B. 6.75 C.5.75 D.5.550706若已定义 int a=3,b=3,x=1,y=2; 表达式 (a=yx)&(x=ba) 的值是( B )。 A. 6 B. 1 C.9 D.050707若有定义:int a=2,b=3; float x=5; 则表达式x*b/a的值是( A )。 A. 7.5 B. 7 C.6 D.550708若有定义:int x=

24、8; float y=130;char z=A; 则表达式x+z%(int)y的值是( C )。 已知A的ASCII码的十进制值为65 A. 运行时产生错误信息 B. 8 C.73 D.8.550709若已定义:int m=7,n=4; float x=3.0,y=8.0,k; 则执行语句k=m/2+n*x/y;k=3+4*3.0/8.0=4.5后,变量k的值是( C )。 A. 3 B. 4 C.4.5 D.550710若有定义:float x=2,y=4,h=3; 下列表达式中与(x+y)*h/2.09.0计算结果不相符的是( C )。A. (x+y)*h/2 B. (x+y)*h*1/2

25、 C.(1/2)=0*(x+y)*h D.h/2*(x+y)50711表达式2+sqrt(16.0)/4结果的数据类型是( A )。 A. double B. int C.char D.void50712若有定义:int a=4,b=5,c=6; 则表达式 (1.0*a+b)/c的值是( A )。 A. 1.5 B. 1 C.4 D.4.550713下列运算符中优先级最低的是( A )。 A. = B. ! C. D.*50714若有定义:float x=3.5,y=3.6; 则表达式( A )的值为6。 A. (int)x+(int)y B. x+y C.(int)(x+y) D.int(x

26、+y)错误表达式50715若有定义:int x; char c=A; 则正确的赋值表达式是( A )。(说明:A的ASCII码的十进制值为65,a的ASCII码的十进制值为97) A. x=c+32 B. x=c+ABC C.x=c+CBA D.x=ABC50716若有定义:float x=2,y; int a=3; 语句y=1*(x+a)/3; 运行后,y的值为( D )。 A. 2.0 B. 0 C.1.0 D.1.50717若有定义:float x=3.5,y=5.5; 则表达式( B )的值为2。 A. (x+y)%7 错误 B. (int)(x+y)%7 C.int(x+y)%7错误

27、 D.(int)x+y%7错误50718若有定义:int a=6,b=7,k=0,t=1; 语句 (k=a6) printf(%dn,x); else printf(%dn,-x); A. 4 B. 5 C.6 D.350802以下程序的运行结果是( C )。 void main() int m,n=1,t=1; if(t= 0) t=-t; else m=n=0?7:3; printf(%dn,m); A. 3 B. - C.7 D.050803对于整型变量a,赋值语句 a=(a%3=0?1:0); 与(D )语句不等价。 A. if (a%3= =0) a=1; else a=0; B.

28、if (a%3!=0) a=0; else a=1;C.if (a%3) a=0; else a=1; D.if (a%3) a=1; else a=0;50804以下程序运行的结果是(B )。 void main() int x,y,z,a; x=y=z=1;a=15; if(!x) a-; else if(y) ; if(z) a=3; else a+=4; printf(%dn,a); A. 15 B. 3 C.19 D.1450805若已定义 int a=1,b=2,t=3; 则执行以下程序段后变量a,b,t的值分别为(A )。 if(a6) printf(%dn,a+2); else

29、 printf(%dn,a+3); A. 运行时产生错误信息 B. 9 C.8 D.650810若有定义:int x=10,y=8,a; 则执行语句a=(-x=y)? x: y);后,变量a的值是( A )。 A. 8 B. 9 C.10 D.050811若有定义: int a=2,b=3,c=1; 则以下程序段的运行结果是( D )。 if(ab) if(ac) printf(%d ,a); else printf(%d ,b); printf(%d ,c); A. 3 1 B. 2 C.3 D.150812以下条件语句中(其中s1和s2分别表示C语言的语句),(D)与其他三条语句不等价。

30、A. if(a) s1; else s2; B. if(a = 0) s2; else s1;C.if(a != 0) s1; else s2; D.if(a = 0) s1; else s2;50813以下程序段运行时,若从键盘输入5,则运行结果是(D )。 int a,y=10; scanf(%d,&a); if (a10) y=a+6; printf(%dn,y+a); A. 10 B. 1 C.16 D.1550814以下程序的运行结果是(B )。 void main() int a,b=2,c=6; a=3; if(a6) a=a+b; else if(a=6) b=a+c; els

31、e a=b+c; printf(%dn,a); A. 5 B. 8 C.6 D.950815若有定义:int x,a; 赋值语句a=(x%3=0)?0:1; 与( B )语句不等价。 A. if (x%3!=0) a=1; else a=0; B. if (x%3) a=0; else a=1; C.if (x%3=0) a=0; else a=1; D.if (!(x%3=0) a=1; else a=0;50816以下程序段的运行结果是( C )。 int s=15; switch(s/4) case 1: printf(One ); case 2: printf(Two ); case

32、3: printf(Three ); default: printf(Over ); A. Three B. Two Over C.Three Over D.One Over50817以下程序段的运行结果是( C )。 int s=15; switch(s/4) default: printf(Over ); case 1: printf(One ); break; case 2: printf(Two ); A. Two B. Over Two C.Over One D.One50818以下程序段运行后x的值为( D )。 int a=3,b=6,x; x=(a=b)?a+:-b; A. 4 B. 3 C.6 D.550900下列程序段中,非死循环的是( A )。 A. int i=100; while(1)

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论