C语言二级试题及答案1_第1页
C语言二级试题及答案1_第2页
C语言二级试题及答案1_第3页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

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

文档简介

1、A) 'fB) '17'C) "n"答案 Cy; double z; 则表达式 w*x+z-y 值的数2、 设有说明:char w; int x; float据类型为 () 。intD) doubleA) floatB) charC)1、以下选项中,非法的字符常量是()oD) 'xaa'答案 D3、下列程序的输出结果是 () o main ()double d=3.2; int x,y;x=1.2; y=(x+3.8)/5.0; printf("%dn", d*y);D)3.07A) 3 B) 3.2 C)0 答案

2、 C 4、假定x和y为double型,则表达式x=2, y=x+3/2的值是()。A) 3.500000 B) 3 C) 2.000000 D) 3.000000 答案为 D5、下列程序执行后的输出结果是 () o main ()int x= 'f'printf( "%cn" , 'A' +(x- 'a' +1):A) G B) H C) I D) J 答案 A6、有如下程序main() int y=3, x=3, z=l;n” , (+x, y+), z+2);运行该程序的输出结果是 ()oA) 3 4B)4 2C)4 3D

3、) 3 3答案 D7、以下程序的输出结果是 ()o main () float x=3 ? 6;int i;i=(int)x;printf (、' x=%f, i=%d", x, i);B) x=3, i=3D) x=3.000000, i=3. 600000A) x=3. 600000, i=4C) x=3.600000, i=3 答案 C8、若有以下定义和语句,则输出结果是 ()ochar cl= 'b', c2= 'e'printf ( 、'%d, %cn", c2-cl, c2r ar +,A ,);A) 2,MB)

4、3, E0 2.ED) 输出项与对应的格式控制不一致,输出结果不确定答案 B9、若有以下定义和语句:int u=010, v=0xl0, w=10:printf (、'%d, %d, %dn", u, v, w);则输出结果是 () 。A) 8, 16, 10 B) 10, 10, 10 C) & & 10 D) & 10, 10 答案 A10、设x为int型变量,则执行语句x=10; x+=x-=x-x;后,x的值为()。A) 10 B) 20 C) 40 D) 30 答案 Bx=x-(x-x)=10, x=x+x=2011、设x和y均为int型变量

5、,则以下语句:x+=y; y=x-y; x-=y;的功能是()A)把x和y按从小到大排序B)把x和y按从大到小排序C)无确定结果D)交换x和y中的值答案 D12、设 i 是 int 型变量, f 是 float 型变量,用下面的语句给这两个变量输入值:scanf( “i=%d, f=%f', &i, &f);为了把100和765.12分别赋给i和f,则正确的输入为()。A) 100 V 空格 >765.12V 回车B) i=100, f=765.12 V 回车C) 100V 回车 >765.12V 回车D) x=100 V 回车y=765.12v 回车答案

6、B13、请阅读以下程序:main()int a=3,b=l,c=0;if(a=b+c) prin tf( "*n"); else printf( n")$ $以上程序()oA) 有语法错不能通过编译B) 可以通过编译但不能通过连接C) 输出*D) 输出$答案Dw=l; x=2; y=3; z=4; m的值是()o14、假定w、x、y、z、m均为int型变量,有如下程序段: m=(w<x)?w:x; m=(m<y)?m:y; m=(m<z)?m:z;则该程序运行后,A) 4答案DB) 3C) 2D) 115、若输入B,以下程序的输出结果是()mai

7、n ()char grade;scanf( %C” , &grade);switch(grade)case,:pri ntf ( “二caseA'case:pri ntf ( “二caseC'60pri” ( “ 60.");defauID 'printf( error. ”);A) >=85.B) >=60.error.答案CC) >=60. <60. error.16、请读程序:main()int x=l, y=0, a=0, b=0;switch(x)case 1:switch(y)case 0:a+;break; cas

8、e l:b+;break;case 2: a+; b+; break;printfC4a=%d, b=%drT, a, b);上面程序的输出结果是()oA) a=2, b=lB) a=l, b=l答案AC) a=l, b=0D) a=2, b=217、若要求在if后一对圆括号中表示a不等于0的关系,则能正确表示这一关 系的表达式为 ()oA) a<>0B) !aC) a=0D) a答案 D18、对以下程序段描述正确的是 () o x=-l;dox=x*x;while(!x);A)是死循环B)循环执行二次0循环执行一次D)有语法错误答案 C19、若 i 为整型变量,则以下循环执行次数

9、是 ()o for(i=2;i=0;) printf( " %d"A)无限次B) 0次C) 1次D) 2次答案 B20、执行语句 for(i=l;i+<4;); 后变量 i 的值是 () 。A) 3B) 4C) 5D)不定答案 C21、有以下程序段int k=0; while(k=l) k+; while 循环执行的次数是 ()oA)无限次B)有语法错,不能执行C) 一次也不执行D)执行1次答案 A22、C 语言中 ()A) 不能使用do-wh订e语句构成的循环B) do-wh订e语句构成的循环必须用break语句才能退出C) do-wh订e语句构成的循环,当wh订e

10、语句中的表达式值为非零时结束循 环D) do-wh订e语句构成的循环,当wh订e语句中的表达式值为零时结束循环 答案 D23、以下的 for 循环( )for (x=0, y=0;( y!=1 23 )&& (x<4);x+);A)是无限循环B)循环次数不定C)执行4次D)执行3次答案 C24、执行以下程序片段的结果是( ) oint x=23;doprintf (“d”, -x) ;while(!x) ;A)打印出321B)打印出230不打印任何内容D)陷入死循环答案B25、以下程序执行后sum的值是()。main () int i, sum=0;for(i=l ;i&

11、lt;=3;sum+) sum+=i;prin tf("%dn",sum);1A) 6B)3C)死循环答案c26、以下程序的输出结果是)。(main ()int i, j, m=0, n=0;for(i=0;i<2;i+) for(j=0;j<2;j+) if(j>=i) m=l; n+;printf (、'dn", n):D)0A) 4B) 20 1答案c27、 以下程序的输出结果是)omain ()int i, a10;for(i=9;i>=0;i-) ai=10-i;printf ( d%d%d , a2, a,a8);A)

12、258B) 741C) 852答案C28、以下数组定义中不正确的是()oD) 0D) 369A) inta23;B) int b 3 = 0, 1, 2, 3;0 int c100100 = 0; D) int d3 上1,2, 1,2,3, 1,2,3,4; 答案 DA) 9 9 答案 BB) 5 20sizeof(st);30、下面语句中不正确的是 (C) 9 20D) 20 20A) int a5= 1, 2, 3, 4, 5;C) int a =0, 0, 0, 0, 0; 答案 D29、以下程序的输出结果是 ()o #include string. h> main ()char

13、 st20="hello0t" printf(%d %dn", strlen(st) 则31、设有: char str ="Beijing" printf("%dn", strlen(strcpy(str, 出的结果为 ()32、B) int a5 = l, 2, 3;D) int 合法的数组鬥执行:“China ”)后);输)oA) inta="string"C)12D)14AC) 5char7B)答案tAng"B) int a5 = 0, 1,2, 3,4,5;A)数组的长度B)数组的首地址

14、C)数组每一个元素的地址D)数组每个元素中的值答案BD)char a = 0, 1, 2, 3, 4, 5;答案 C33、 当调用函数时,实参是一个数组名,则实参向形参传递的是()o34、在 C 语言的函数中( )oA )必须有形参B )形参必须是变量名0 可以有也可以没有形参D )数组名不能作形参答案 C 35、在下列叙述中,错误的一条是( )oA ) 全局变量存放在静态存储区中,在程序开始执行时就给全局变量分配存 储区 , 程序执行完才释放B ) 在有参函数中,形参在整个程序一开始执行时便分配内存单元0 用数组名作函数实参和形参时,应在主调函数和被调用函数中分别定义数组D)在同一个源文件中

15、,全局变量与局部变量同名时,在局部变量的作用范围内 全局变量不起作用答案 B36、若输入 1.5、2.5,以下程序的输出结果为 () o main() int max(float x, float y);float a, b;int c; scanf(6t%f, %f', &a, &b); c=max(a, b);printf ( “cT, c); max(float x, float y) float z;z=x>y ? x : y; return(z);A) 1 B) 2.5 C) 2 D) 3 答案 c37、C 语言规定,程序中各函数之间 ()A) 既允许直

16、接递归调用也允许间接递归调用B) 不允许直接递归调用也不允许间接递归调用 0 允许直接递归调用不允许间接递归调用D)不允许直接递归调用允许间接递归调用答案A38、下列程序执行后的输出结果是 ()of(int a)int b=0; static c=3; a=c+, b+; return(a); main() int a=2, i, k;for(i=0;i<2;i+) k=f(a+);printf ( “diT, k);A) 3B) 0C) 5D) 4答案 D39、以下程序的输出结果是 () 。fun(int k)if(k>0) fun(k-l); printf (“d”, k);m

17、ain()int w=5;fun(w); A) 答案2BB)0123451234554321040、以下程序的输出结果是 () o int abc(int u, int v);main() int a=24, b=16, c;c=abc (a, b);printf( <t%dn, c);int abc(int u, int v)int w;while(v)w= u%v; u=v; v=w;return u;A) 6B) 7 C) 8D) 9答案 C41、下列程序执行后的输出结果是 ()o #define MA(x) x*(x-l) main()int a=l, b=2; printfC

18、%dnn, MA(l+a+b);A) 6B) 8C) 10D)答案 B 1242、以下程序的输出结果是 ()o #define M(x, y, z) x*y+z main() int a=l, b=2, c=3;printf(n%dnn, M(a+b, b+c, c+a);A) 19 B) 17C) 15答案 DD)1243、以下程序的输出结果是 () 。#define SUB(x, y) (x)*y main() int a=3, b=4;printf( 4t%dn, SUB(a+, b+); A) 12 B) 15 C) 16 D) 20 答案 A43、下列程序的输出结果是 ()o mai

19、n()char a10=9,8,7,6,5,4,3,2,l,0,*p=a+5;printf( n%dn,*-p);A)非法B) a4 的地址答案 C44、下列程序的运行结果是 ( void fun(int *a, int *b)int *k;k=a; a=b; b=k;main()int a=3, b=6, *x=&a, *y=&b;fun(x, y);printf("%d %d", a, b);A) 6 3B) 3 6答案 B0 编译出错45、 下面程序的输出结果是()0Am)a*inp(+)9 B) *(p+8)C)int a = l,2,3,4,5,6,7,8,9,0,*p; *

温馨提示

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

评论

0/150

提交评论