11计算机二级考试C语言选择题.doc_第1页
11计算机二级考试C语言选择题.doc_第2页
11计算机二级考试C语言选择题.doc_第3页
11计算机二级考试C语言选择题.doc_第4页
11计算机二级考试C语言选择题.doc_第5页
已阅读5页,还剩32页未读 继续免费阅读

下载本文档

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

文档简介

2009年6月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 ( A )是关于C语言数据类型的正确叙述。A.变量必须先定义后使用 B.不允许使用空类型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.若干过程组成 D.若干子程序组成50108 结构化程序设计的三种基本结构是( C )。A.函数结构、判断结构、选择结构 B.平行结构、嵌套结构、函数结构C.顺序结构、选择结构、循环结构 D.判断结构、嵌套结构、循环结构50109 C源程序的调试是指对源程序进行( C )。A.录入与编辑 B.查错与编译 C.查错与排错 D.连接与运行50110 C语言中,可将一系列语句置于一对( C )之间从而构成复合语句。A.尖括号 B.圆括号( ) C.花括号 D.方框号 50111 构成C源程序的基本单位是( D )。A.语句 B.变量 C.运算符 D.函数50112 以下叙述中正确的是( A )。A.C源程序中注释部分可以出现在程序中任意合适的地方B.一对花括号只能作为函数体的定界符C.C源程序编译时注释部分的错误将被发现D.构成C源程序的基本单位是函数,所有函数名都可以由用户命名50200 C语言的下列运算符中,优先级最高的运算符是( A )。A.+ B.+= C.| D.!=50201 ( D)为正确的用户标识符。A.struct B.5f C._f 0.6 D._for50202 C语言基本数据类型包括( 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.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.等于所用计算机的字长50211 Turbo C中,基本数据类型存储空间长度的排列顺序是( A )。A.charintlong intfloatdouble B.char=intlong intfloatdoubleC.charintlong int=float=double D.char=int=long intfloat5) printf(%dn,a);else printf(%dn,a-);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.scanf(%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) ;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.4321432143211231231232121 B.432112321 C.4321+123+21 D.432+123+02150507 已有如下定义和输入语句,char c1,c2;int x; scanf(%c%d%c,&c1,&x,&c2);若要求x、c1、c2的值分别为9、K和H,正确的数据输入是( A )。A.K9H B.K 9 H C.K9 H D.9KH50508以下程序段的运行结果是( A )。int a=1; printf(%d, %d, %dn, a, +a, a+);A.3,3,1 B.1, 2, 2 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=65A C.65+65=130 D.65+A=13050510若已定义:int x=7;float y=7.0; 以下语句中能输出正确值的是( 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);50511 putchar函数可以向终端输出一个( 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 * %.2f=%.2f,a,b,a*b);C.printf(%d * %d=%.2f,a,b,a*b); D.printf(%.2f * %.2f=%.2f,a,b,a*b);50600有以下程序:main() int c; while(c=getchar()!= 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的值为( C )。A.1 B.t. 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)50609若已定义:int x=4,y=2,z=0; 则表达式 (x-ybc的值是( A )。A.0 B.1 C.2 D.350611 以下运算符中优先级最高的是( D )。A.x) | (b=yz);A.0 B.1 C.-1 D.650700 以下程序运行后,a的值是( C )。main() int a,b; for(a=1,b=1;a=20) break;if(b%3=1) b+=3; continue; b-=5; A.101 B.100 C.8 D.750701 已定义 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=028 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的表达式是( 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) 的值是( D )。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=8; float y=130;char z=A; 则表达式x+z%(int)y的值是( C )。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的值是( C )。A.3 B.4 C.4.5 D.550710 若有定义:float x=2,y=4,h=3; 下列表达式中与(x+y)*h/2.0计算结果不相符的是(C)。A.(x+y)*h/2 B.(x+y)*h*1/2 C.(1/2)*(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.550800以下程序段的运行结果是( D )。int x=3;do printf(%3d, , x-=2 ); while(!(-x);A.1 B.30 C.死循环 D.1, -250801 以下程序运行时,若从键盘输入6,则输出结果是( A )。void main()int x; scanf(%d,&x); if (x-6) 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.-1 C.7 D.150803对于整型变量a,赋值语句 a=(a%3=0?1:0); 与( D )语句不等价。A.if (a%3=0) a=1; else a=0; B.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 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 1 C.3 D.150812 以下条件语句中(其中s1和s2分别表示C语言的语句),( D )与其他三条语句不等价。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;50900 下列程序段中,非死循环的是( A )。A.int i=100; while(1) i=i%100+1; if(i=100) break; B.int k=0; do +k; while(k=0);C.int s=10; while(+s%2+s%2) s+;D.for(;)50901若已定义 int a; 不会产生死循环的语句是( C )。A.for( ; ;a+= 2); B.for(a=10; ;a-);C.for( ;(a=getchar()!= n; ); D.while(-1) a+;50902在循环语句的循环体中,break语句的作用是( B )。A.继续执行break语句之后的循环体各语句 B.提前结束循环,接着执行该循环后续的语句C.结束本次循环 D.暂停程序的运行50903以下程序段运行后,循环体中的 n+=3; 语句运行的次数为( A )。int i,j,n=0;for(i=1;i=3;i+) for(j=1;j=i;j+) n+=3; printf(%dn,n); A.6次 B.9次 C.12次 D.1次50904 dowhile循环与while循环的主要区别是( D )。A.while循环体至少无条件执行一次,而dowhile循环体可能都不执行B.dowhile循环体中可使用continue语句,while循环体中不允许出现continue语句 C.dowhile循环体中可使用break语句,while循环体中不允许出现break语句D.dowhile循环体至少无条件执行一次,而while循环体可能都不执行50905以下程序段运行后,循环体运行的次数为( A )。 int i=8,a0; for ( ;i8;i+) a+= i;A.0次 B.1次 C.8次 D.无限50906 以下程序段运行后变量a的值为( C )。 int i=1,a=0; for( ;i3;i+) continue; a+=i; A.6 B.3 C.0 D.550907 有以下程序: void main() int i; for(i=1; i=3; i+) switch(i) case 1: printf(%d, i); break; case 2: printf(%d, i); default : printf(%d, i); 执行后输出结果是( A )。A.1223 B.1 C.111223 D.12350908 以下程序的运行结果是( C )。 void main()int s = 0, i = 0; while(i 8) i+; if(i%2=0) continue; s+=i; printf(%dn,s); A.36 B.7 C.16 D.1250909 以下程序的运行结果是( B )。 void main() int s = 0, i = 0; while(i=1;i-) for(j=i;j=3;j +) k += i * j ; printf(%dn, k); A.19 B.29 C.6 D.2550912 以下程序运行时,循环体的执行次数是( C )。 void main() int i,j; for(i=0,j=1;i5); for(i=0;i6;i+) printf(%d ,mi);A.7 10 9 8 11 4 B.7 10 9 8 11 2 C.5 10 9 8 11 2 D.5 10 9 8 11 451009下面程序段的运行结果是( A )。 int m=5,8,7,6,9,2,i=1; for(i=0;i6;i+) if(i % 2 !=0) mi+=10; for(i=0;i=0;i-) ai=ai*j; j=j*3; for(i=0;i=0;j-) pic(3-j, ); pic(i+2*j, *);putchar(n); pic(int len,char c) int k; for(k=1;k=len;k+) putchar(c);A. * * * *B.* * * *C. * * * *D.* * * *51101以下程序段执行后输出的结果是( D )。int a4=1,2,3,4,5,6,7,8,9,10,11,12;printf(%dn,a12);A.2 B.3 C.6 D.751102以下程序段执行后p的值是( A )。 int a33=3,2,1,3,2,1,3,2,1;int j,k,p=1; for(j=0;j2;j+) for(k=j;k4;k+) p*=ajk;A.108 B.18 C.12 D.251103不能对二维数组a进行正确初始化的语句是( A )。A.int a32=1,2,3,4,5,6; B.int a32=1,2,3,4,5;C.int a2=1,2,3,4,5,6; D.int a32=1,2,3,4,5;51104 若有定义:int s34=1,2,0,3,4,5;则s21的值为( B )。A.3 B.4 C.0 D.151105若有定义:int a34;则表达式&a21-a的值为( C )。A.7 B.8 C.9 D.1051106以下程序段运行后sum的值为( D )。int k=0,sum=0;int a34=1,2,3,4,5,6,7,8,9,10,11,12;for(;k3;k+) sum+=akk+1;A.9 B.18 C.19 D.2151107 若有定义int a23;则合法引用数组元素的是( A )。A.a01/2 B.a21 C.a23 D.a1351108 在以下数组定义中,错误的是( A )。A.int a2=1,2,3,4,5; B.int a2=0,1;C.int a22=1,2,3; D.int a2=1,2,3,4;51109若定义int a4=1,2,3,4,5,6,7,8;则表达式sizeof(a01)的值为( B )。A.1 B.2 C.3 D.451110以下程序段运行后s的值是( C )。 int a33=1,2,3,4,5,1,2,3,4; int i,j,s=1; for(i=0;i3;i+) for(j=i+1;j3;j+) s+=aij;A.6 B.120 C.7 D.24051111设已定义: int a4=0,0,0; 则下列描述正确的是( C )。A.数组a包含3个元素 B.数组a的第一维大小为3C.数组a的行数为1 D.元素a03的初值不为051112在C语言中,若定义二维数组a23,设a00在数组中位置为1,则a11在数组中位置是( C )。A.3 B.4 C.5 D.651200设有下列语句,则( D )是对a数组元素的不正确引用,其中0i10。 int a10=0,1,2,3,4,5,6,7,8,9, *p=a;A.ap-a B.*(&ai) C.pi D.*(*(a+i)51201设已定义: char s18,s28=Science; 能将字符串Science赋给数组s1的语句是(C)。A.s1=s2; B.strcpy(s2,s1); C.strcpy(s1,s2); D.s1=Science;51202 以下程序段的运行结果是( A )。 char str32= a, b, c, d, e, f; str20= 0; printf(%s,str0);A.abcd B.ab C.abcd0 D.abcd0f51203有如下定义:char str10= National;则分配给数组str的存储空间是(B)个字节。A.11 B.10 C.9 D.851204以下程序段运行后输出结果是( C )。char a=country;char b=game;strcpy(a,b);printf(%c,a3);A.n B.u C.e D.m51205 以下程序段运行后输出结果是( A )。char s=info0mis;printf(%d,strlen(s);A.4 B.5 C.8 D.951206以下程序段运行后a的值为( D )。int a=2;char s1=passion,s2=s1;a=strcmp(s1,s2);A.-1 B.2 C.1 D.051207以下对C语言字符数组描述中,错误的是( B )。A.可以用strlen函数计算字符数组中字符串的长度B.可以在赋值语句中通过赋值运算符=对字符数组整体赋值C.存放在字符数组中的字符串,以0作为该字符串结束标志D.字符数组可以存放字符串或字符51208以下程序段运行后,屏幕的输出结果是( B )。char str80;strcpy(str,computer);printf(%d,strlen(str);A.7 B.8 C.9 D.8051209若有定义:char str16=ABCDE,*ps,*str2=FEDCBA;( C )是错误的。A.strcpy(str2,str1); B.表达式strcmp(str1,str2)的值小于0C.str1=str2; D.表达式strlen(str1)的值为551210 已有定义 char str115=computer,str215;则语句用法正确的是( C )。A.str2=str1; B.str2=science; C.scanf(%s,str2); D.printf(%s,&str1);51211 设已定义: char

温馨提示

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

评论

0/150

提交评论