1、C语言基础题分析1.执行下列语句序列后,不可能出现的运行结果是_。int n; scanf( %d, &n); switch ( n ) case 1: case 2: putchar(X); case 3: case 4: putchar(Y); break; default: putchar(Z); A. 显示:zB. 显示:xyC. 显示:xD. 显示:y2.设a,b为整型变量, 且二者均不为0, 以下关系表达式中恒成立的是_。A. a/b*b/a=1B. a/b*b=aC. a*b/a=bD. a*b/ a*b =13.设有定义:int x=10,y=20,z=30; 则执行下列语句后
2、的结果是_。if ( xy ) z=x;x=y; y=z;printf(%d,%d,%d,x, y, z );A. 20,30,20B. 20,30,30C. 20,30,10D. 10,20,304.下列程序的输出结果是_。main()int a = 011;printf( %dn, +a );A. 9B. 10C. 11D. 125.设 x, y 和 z 是int型变量,且 x=3, y=4, z= 5,则下面表达式中值为0的是_。A. !(xy) y=z; z=x; x=y; printf(“%d,%d,%d”,x,y,z); 后,输出是_A. 25,20,30B. 30,30,25C.
3、 25,30,30D. 25,30,2515. 程序段:int num=2; while(num) printf(“%d ,”,num-);的运行结果是_A. 2,1,B. 2,1C. 2,1,0D. 2,1,0,16. 若有说明:int a34,s;则对数组a的元素引用正确的是_A. s=0; for(i=0;i=3;i+) for(j=0;j4;j+) s+=aij;B. s=0; for(j=0;j=4;j+) for(i=0;i3;i+) s+=aij;C. s=0; for(i=0;i4;i+) for(j=0;j=3;j+) s+=aji;D. s=0; for(i=0;i3;i+
4、) for(j=0;jname0C. per.name8D. per.id20. 若有以下语句:char x=5,y=9,z; z=(y|x)2; 则z的二进制值是_A. 00011011B. 00001010C. 00110100D. 0000110021. 以下C程序中预处理命令写法正确的是:。A. #include (stdio.h)B. #include stdio.hC. #include stdio.hD. #include 22. 设有变量定义语句char a; 则下面的赋值语句中是正确的。A. a=&;B. a=&;C. a= ;D. a=16 ;23. 设有char ch;
5、与语句“ch=getchar();”等价的语句是:。A. printf(%c,ch);B. printf(%c,&ch);C. scanf(%c,ch);D. scanf(%c,&ch);24. int a=2, b=5;则表达式21%9/(float)a+4/b*b的运算结果为。A. 2B. 1C. 1.5D. 025. 能正确表示逻辑关系a=10 或 a=10 or a=0B. a=10C. a=10D. a=10 & a=026. 设有int n=60;写出下列语句的运行结果switch (n/10) case 6: printf();break;case 5: printf(#);de
6、fault: printf($); A. #$B. #$C. $D. 27. 设有int i; 以下语句中,循环次数为100次的语句是:。A. for ( i=0; i=100; i+ )B. for ( i=0; i99; i+ )C. for ( i=1; i99; i+ )D. for ( i=0; i100; i+ )28. C程序中,用于提前结束本次循环、进行下一次循环的语句是。A. breakB. continueC. returnD. exit29. 若有数组定义语句:int t32;则 t数组最后一个元素是:。A. t32B. t23C. t2D. t2130. 设有定义int
7、 a=1,3,5,7,9,*p=a; while(*p!=3) p+; 结果为7的表达式是:A. *(p+2)B. *(p+3)C. *p+2D. *p+331. char a10;不能将字符串abc存储在数组a中的是。A. strcpy(a,abc);B. a0=0;strcat(a,abc);C. a=abc;D. int i; for(i=0;inext; p=head;B. p-data=head; head=p;C. head=p-data; p=head;D. p-next=head; head=p;36. C 语言程序中可以对程序进行注释,注释部分必须用符号_括起来。A. 和 B
8、. 和 C. /* 和 */D. */ 和 /*37. 设要定义n为整型变量,定义x为浮点型变量,正确的语句是:_ 。A. int n, float x,B. int n, float x;C. int n; float x,D. int n; float x;38. 设有int n; 从键盘上输入整数给变量n,正确的语句是:_ 。A. scanf( n );B. scanf( n );C. scanf( %d, n );D. scanf( %d, &n );39. 程序段 int x=3, y=2;printf(%d, x*=y+8/5);的输出结果为_ 。A. 1B. 5C. 7D. 94
9、0. 要判断char型变量m是否是数字,可以使用表达式_。A. 0=m & m=0 & m=9C. 0=m & m=9D. 0=m b) a=b;if(ac) a=c;A. 1B. 2C. 3D. 不确定42. 下面的for 语句执行时,_将形成无限循环。A. for(s=j=0; j100; j+=1) s+=j;B. for(s=j=0; j100; j+1) s+=j;C. for(s=j=0; j100; +j) s+=j-1;D. for(s=j=0; j100; j+) s+= j;43. 循环语句中,break的作用是_。A. 终止程序运行B. 结束本次循环C. 从本循环体内跳出
10、D. 跳出子函数44. 以下正确的语句是_。A. inta14 = 1,2,3,4,5;B. float x3 = 1,2,3;C. long b23 = 1,1,2,1,2,3;D. double y 3 = 0;45. 执行以下程序段后,m的值是_。int a=2,1,3,5,4; int m=10,k,*ptr=a; for(k=0;kdata; _。A. p-next-data = p-data; p-data =t;B. p-data = p-next-data; p-next-data =t;C. p-data = t; p-next-data = p-data;D. p-next
11、-data = t; p-data = p-next-data;51. 关于C程序的主函数,以下描述中正确的是:_ 。A. C程序的第一个函数称为主函数,程序从该函数开始运行。B. C程序可以有多个主函数,程序从第一个主函数开始运行。C. C程序可以没有主函数,程序从第一个函数开始运行。D. C程序的主函数即是main函数,程序从该函数开始运行。52. 字符变量a与b分别初始为S与B,正确的语句是:_ 。A. char a,b=S,B;B. char a=S, char b=B;C. char a=S, b=B;D. char a=S, b=B;53. 设有int n2010; 要求屏幕上显示
12、“n=2010”结果,正确的语句是:_ 。A. printf( n );B. printf( n=, n );C. printf( n=, %d, n );D. printf( n=%d, n );54. 设有变量定义:int a=5, b=8;当执行完语句:b= ab ? a: b - 1; 之后,变量 a和 b的值为 _。A. 5和5B. 5和7C. 5和8D. 5和955. 设int n; 判断“n不为0”的表达式是:_。A. n=0B. !(n=0)C. n=!0D. n!=056. 若有定义: float w; intnum; char s; 则合法的switch语句是_。A. sw
13、itch(w) case 1.0: printf(*n); case 2.0: printf(*n); B. switch(num); case 1 printf(*n); case 2 printf(*n); C. switch(s) case a: printf(*n); case b: printf(*n); default: printf(n);D. switch(num+1) case 1: printf(*n); case 1: printf(*n); default: printf(n); 57. 以下语句中,循环次数不为10次的语句是_。A. for(i=1;i10;i+);B
14、. i=1;doi+;while(i0) -i;D. for(i=10; i=1; i-;58. 用于for循环体中的continue语句的作用是_。A. 终止程序执行B. 终止循环继续C. 结束本次循环D. 重新执行循环59. 若要定义一个int型二维数组a,并使其各元素具有初值: 2 3 0 0 4 0 5 0 0 0 0 0 则正确的定义语句是_。 A. int a=2,3,0,0,4,0,5,0,0,0,0,0;B. int a4= 2,3,0,0,4,0,5,0,0,0,0,0;C. inta34= 2,3,4,5;D. int a=2,3,0,0,4,0,5,0,0,0,0,0;6
15、0. 设有语句:int x=0,1,2,3,4,5,6,7,8,9, *p=x+5; while(*p+next; p-next=q-next; free(q);B. q=p-next; free(q); p-next=p-next-next;C. p-next=p-next-next; q=p-next; free(q);D. p-next=q-next; q=p-next; free(q);66. C程序是由_组成的。A. 子程序B. 过程C. 子函数D. 主函数和子函数67. 若有定义语句:char c=n; 则变量c _。A. 包含4个字符B. 包含2个字符C. 包含1个字符D. 说明
16、不合法,c的值不确定68. 设有float x=1.25; int n=x; 则语句printf(%.2f,%dn,x,n);的输出是:_ 。A. 1.25,1.25B. 1,1C. 1,1.25D. 1.25,169. 设x为int型变量,且初值为 f,则执行printf(%cn, A+(x-a+1);后的输出结果是 _。A. GB. HC. ID. J70. 设有int n; 则判断“n为二位数(10至99)”的表达式是:_ 。A. 10=n=99B. 10=n | n=99C. 10=n, n=99D. 10=n & n0) printf(abn);C. if(x0&x10) y=x*x-1.5;D. if(x) y+=1;72. 设:inti,n ;float sum; 则求调和级数s=1+1/2+1/3+.前n项之和的正确循环语句是_。A. for(i=1;i=n;i+) sum+=1/i ;B. for(i=1,sum=0.0;i=n;i+) sum+=1/i;C
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1