C语言考试题库与答案_第1页
C语言考试题库与答案_第2页
C语言考试题库与答案_第3页
C语言考试题库与答案_第4页
C语言考试题库与答案_第5页
已阅读5页,还剩30页未读 继续免费阅读

下载本文档

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

文档简介

C语言理论上机考试选择题部分(共200题)

1、下面程序的输出是—D{intx=023;

#include<stdio.h>printf(n%d\nM,-x);

voidmain()}

{intk=H;A)17B)18C)23D)24

printf("k=%d,k=%o,k=%x\n',,k,k,k);11、下面程序的输出的是C.

)#include<stdio.h>

A)k=ll,k=l2,k=11B)k=ll,k=13,k=13voidmain()

C)k=ll,k=013,k=0xbD)k=ll,k=13,k=b{intx=10,y=3;

printf(',%d\n,,,y=x/y);

2、在下列选项中,不正确的赋值语句是_D.)

A)++t;B)nl=(n2=(n3=0));A)0B)1C)3D)不确定的值

C)k=i=j;D)a=b+c=l;

12、己知字母A的ASCII码为十进制的65,下面程序

3、下面合法的C语言字符常量是A.的输出是A.

A)'\t'B)"A"C)65D)A#include<stdio.h>

voidmain()

4、表达式:10!=9的值是D.{charchl,ch2;

A)trueB)非零值C)0D)1chl='A=5-3;

ch2='A'+'6'-3;

5、C语言提供的合法的数据类型关键字是printf("%d,%c\n\chl,ch2);

B.)

A)DoubleB)shortC)integerD)CharA)67,DB)B,CC)C,DD)不确定的值

6、字符(char)型数据在微机内存中的存储形式是13、若要求在if后一对圆括号中表示a不等于0的关

_D_.系,则能正确表示这一关系的表达式为___D_.

A)反码B)补码C)EBCDIC码D)ASCH码A)a<>0B)!aC)a=0D)a

7、C语言程序的基本单位是C.14、以下程序的输出结果是一D.

A)程序行B)语句C)函数D)字符#include<stdio.h>

voidmain()

8、设inta=12,则执行完语句a+=a-=a*a后,a的值是{intx=10,y=10;

____D____printf(H%d%d\nH,x-,-y);

A)552B)264C)144D)-264)

A)1010B)99C)910D)109

9、执行下面程序中的输出语句后,输出结果是

____B_.15、设有如下定义:

#include<stdio.h>intx=10,y=3,z;

voidmain()则语句

{inta;printf(M%d\nn,z=(x%y,x/y));

printf(',%d\n,,,(a=3*5,a*4,a+5));的输出结果是D.

)A)1B)0C)4D)3

A)65B)20C)15D)10

16、为表示关系x2y》z,应使用C语言表达式

10、下面程序的输出是一B.—A—.

#include<stdio.h>A)(x>=y)&&(y>=z)B)(x>=y)AND(y>=z)

voidmain()C)(x>=y>=z)D)(x>=y)&(y>=z)

A)8,10,8,10B)9,11,8,10

17、C语言中非空的基本数据类型包括—B—.C)9,11,9,10D)9,10,9,11

A)整型,实型,逻辑型B)整型,实型,字符型

C)整型,字符型,逻辑型22、己知a=l2,则表达式a+=a-=a*=a的结果是

D)整型,实型,逻辑型,字符型_____A_.

18、若x和y都是int型变量,x=100,y=200,且有下面的A)0B)144C)12D)-264

程序片段:23、若已定义inta,则表达式a=10,a+10,a++的值是

printf(n%dn,(x,y));_B_.

上面程序片段的输出结果是—A—.A)20B)10C)21D)11

A)200B)100

C)100200D)输出格式符不够,输出不确定的值24、阅读下面的程序

#include<stdio.h>

19、阅读下面的程序voidmain()

#include<stdio.h>(

voidmain()inti,j;

(scanf("%3d%2d”,&i,&j);

charch;printf(',i=%d,j=%d\n",i,j);

scanf("%3c",&ch);)

printf("%c”,ch);如果从键盘上输入1234567〈回车〉,则程序的运行结果

)是D.

如果从键盘上输入A)i=123,j=4567B)i=1234,j=567

abc<回车,C)i=l,j=2D)i=123,j=45

则程序的运行结果是_A.

A)aB)bC)cD)程序语法出错25、下面程序的输出结果是D.

#include<stdio.h>

20、阅读下面的程序voidmain()

#include<stdio.h>(

voidmain()inta=-l,b=4,k;

(k=(++a<=0)&&(b—<=0);

inti,j;printf("%d,%d,%d\n”,k,a,b);

i=010;)

j=9;A)1,1,2B)1,0,3C)0,1,2D)0,0,3

printf(n%d,%dn,i-j,i+j);

)26、下面程序的输出结果是—A—.

则程序的运行结果是—D—.#include<stdio.h>

A)1,19B)-l,19C)1,17D)-I,17voidmain()

(

21、阅读下面的程序inta=5,b=3;

#include<stdio.h>floatx=3.14,y=6.5;

voidmain()printf(',%d,%d\n,',a+b!=a-b,x<=(y-=6.1));

()

inti,j,m,n;A)1,0B)0,lC)1,1D)0,0

i=8;j=10;

m=++i;27、执行下面程序段后,输出结果是—A—.

n=j++;inta;

printf(n%d,%d,%d,%dn,i,j,m,n);intb=65536;

)a=b;

程序的运行结果是C—.printf(H%d\nH,a);

A)65536B)0C)-lD)1D)C语言中变量必须先定义后引用

28、若有以下定义和语句:38、C语言中的变量名只能由字母,数字和下划线三种

inta=010,b=0x10,c=l0;字符组成,且第一个字符—C—.

printf(',%d,%d,%d\n,,,a,b,c);A)必须为字母

则输出结果是B.B)必须为下划线

A)10,10,10B)8,16,10C)8,10,10D)8,8,10C)必须为字母或下划线

29、已知有double型变量x=2.5,尸4.7,整型变量a=7,D)可以是字母,数字或下划线中的任意一种

则表达式x+a%3*(int)(x+y)%2/4的值是B.39、设有说明:charw;intx;floaty;doublez;则表达式:

A)2.4B)2.5C)2.75D)0w*x+z-y值的数据类型是一D—.

A)floatB)charC)intD)double

30、若已定义x和y是整型变量,x=2;,则表达式

y=2.75+x/2的值是C____.40、一个C语言的执行是从A

A)5.5B)5C)3D)4.0A)本程序的主函数开始,到本程序的主函数结束

B)本程序的第一个函数开始,到本程序的最后一个函

31、以下程序的输出结果是—D—.数结束

#include<stdio.h>C)本程序的主函数开始,到本程序的最后一个函数结

voidmain()束

(D)本程序的第一个函数开始,到本程序的主函数结束

inta-12,b=12;

printf("%d,%d\n",—a,++b);41、设a为整型变量,不能正确表达数学关系10<a<15

)的C语言表达式是—A—.

A)10,10B)12,12C)11,10D)11,13A)10<a<15B)a==11||a==12||a==13||a==14

C)a>l0&&a<15D)!(a<=10)&&!(a>=15)

32、设有以下语句:intx=10;x+=3+x%(3),则x的值

是.A42、下列程序执行后的输出结果是__C.

A)14B)15C)llD)12#include<stdio.h>

voidmain()

33、若d为double型变量,则表达式d=l,d+5,d++的值{inta=5,b=60,c;

是D_.if(a<b)

A)1B)6.0C)2.0D)1.0{c=a*b;printf("%d*%d=%d\n”,b,a,c);}

else

34、表达式5!=3的值是__D____.{c=b/a;printf("%d/%d=%d\n",b,a,c);}

A)TB)非零值C)0D)1)

A)60/5=12B)300C)60*5=300D)12

35、若有定义inta=12,n=5,则表达式a%=(n%2)运算

后,a的值_____A_____43、如果c为字符型变量,判断c是否为空格不能使

A)0B)1C)12D)6用A.(假设己知空格ASCII码为32)

A)if(c==,32')B)if(c==32)

36、若有定义intx=3,y=2和floata=2.5,b=3.5,则表达C)if(c=='\40')D)if(c=='')

式:(x+y)%2+(int)a/(int)b的值是_D_.

A)0B)2C)1.5D)144、运行下面程序时,若从键盘输入"3,5<CR>",则程

序的输出结果是____D____.

37、在C语言中,以下叙述不正确的是A.#include<stdio.h>

A)在C程序中,无论是整数还是实数,都能被准确无误voidmain()

的表示(

B)在C程序中,变量名代表存储器中的一个位置intx,y;

C)静态变量的生存期与整个程序的生存期相同scanf("%d,%d",&x,&y);

if(x==y)if(a<0.0)b=0.0;

printf(Mx==yH);elseif((a<0.5)&&(a!=2.0))b=1.0/(a+2.0);

elseif(x>y)elseif(a<10.0)b=1.0⑵

printf(^^x>y,,);elseb=10.0;

elseprintf(u%l\nn,b);

printf(,,x<yn);)

)A)0.000000B)0.500000

A)3<5B)5>3C)x>yD)x<yC)1.000000D)0.250000

45、运行下面程序时,若从键盘输入数据为48、执行下面程序后,运行结果是—A—.

"6,5,7<CR>n,则输出结果是C_.#include<stdio.h>

#include<stdio.h>voidmain()

voidmain(){intx=41,y=l;

{inta,b,c;if(x%3==0&&x%7==0)

scanf(n%d,%d,%dH,&a,&b,&c);{y+=x;printf(ny=%d\n",y);}

if(a>b)else

if(a>c){y=x;printf(ny=%dn,y);)

printf(M%d\n",a);)

elseA)y=41B)y=43C)y=42D)y=l

printf(n%d\n",c);

else49、运行下面程序时,从键盘输入”12,34,9<CR>",则

if(b>c)输出结果是_A_.

printf(n%d\nn,b);#include<stdio.h>

elsevoidmain()

printf(n%d\nn,c);{intx,y,z;

)scanf(,,%d,%d,%d',,&x,&y,&z);

A)5B)6C)7D)不定值if(x<y)

if(y<z)printf("%d\n",z);

46、执行下面程序时,若从键盘输入”2<CR>",则程序elseprintf("%d\n”,y);

的运行结果是—A—.elseif(x<z)printf("%d\nu,z);

#include<stdio.h>elseprintf(n%d\nn,x);

voidmain())

{intk;charcp;A)34B)12C)9D)不确定的值

cp=getchar();

if(cp>=O&&cp<=9)50、运行下面程序时,从键盘输入字母H,则输出结

k=cp-'O';果是C___.

elseif(cp>=*a,&&cp<=T)#include<stdio.h>

k=cp・'a'+10;voidmain()

elsek=cp-'A'+10;{charch;

printf(n%d\nu,k);ch=getchar();

)switch(ch)

A)2B)4C)1D)10{case,H,:printf(',Hello!\nu);

case*G,:printf(HGoodmoming!\nu);

47、运行下面程序时,从键盘输入”2.0<CR>",则输出default:printf(',Bye_Bye!\n,');

结果是—B.

#include<stdio.h>

voidmain()A)Hello!B)Hello!

{floata,b;GoodMorning!

scanf(n%f*,&a);C)Hello!D)Hello!

Goodmorning!Bye_Bye!#include<stdio.h>

Bye_Bye!voidmain()

{intx=0,y=l,z=0;

51、执行下列程序段后的输出结果是A.if(x=z=y)

intx=l,y=l,z=l;x=3;

x+=y+=z;printf(u%d,%d\nu,x,z);

printf("%d\n,,,x<y?y:x);)

A)3B)2C)1D)4A)3,0B)0,0C)0,1D)3,l

52、设ch是char型变量,值为A,则表达式ch=(ch>=,A,57、假定等级和分数有以下对应关系:

&&ch<=,Z')?ch+32:ch的值是_B_.等级:A分数:85〜100

A)ZB)aC)zD)A等级:B分数:60〜84

等级:C分数:60以下

53、下面程序的输出结果是C____.对于等级grade输出相应的分数区间,能够完成该功

#include<stdio.h>能的程序段是—D—.

voidmain()A)switch(grade)

{intx=8,y=-7,z=9;(

if(x<y)case,A':printf(H85-100\nH);

if(y<0)z=0;case,B,:printf(,,60-84\nu);

elsez-=l;case'C':printf("60以下\n");

printf(u%d\nu,z);defauh:printf("等级错误!\n");

))

A)8B)1C)9D)0B)switch(grade)

(

54、运行下面程序时,若从键盘输入"5<CR>”,则程序的case'A':printf("85--100\nu);break;

输出结果是B_.case,B':printf(',60-84\nu);

#include<stdio.h>caserC*:printf(H60以下\n");

voidmain()default:printf(H等级错误!\n");

{inta;)

scanf("%dM,&a);C)switch(grade)

if(a++>5)printf(',%d\n,,,a);(

elseprintf("%d\n",a—);case'A':printf("85--100\nu);break;

)caseB:printf("60--84\n");break;

A)7B)6C)5D)4case'C':printf("60以下\n");

defauh:printf("等级错误!\n");

55、运行下面程序时,若从键盘输入”3,4<CR>",则)

程序的输出结果是B_.D)switch(grade)

#include<stdio.h>(

voidmain()case,A,:printf(,185-l00\nu);break;

{inta,b,s;caseB:printf("60--84\n");break;

scanf(n%d,%dH,&a,&b);case'C,:printf(,'6O以下\nu);break;

s=a;default:printf("等级错误!\n");

if(s<b)s=b;)

s=s*s;

printf("%d\n”,s);58、能够完成如下函数计算的程序段是_B.

)厂-1x<0

A)14B)16C)18D)20y=T0x=0

L1x>0

56、下列程序的执行结果是D.A)y=l;B)if(x>=0)

if(x!=O)if(x>0)y=l;if(a)d=d-10;

if(x>0)y=1;elsey=0;elseif(!b)

elsey=0;elsey=-l;if(!c)x=15;

C)y=0;D)y=-l;elsex=25;

if(x>=0)if(x>0)y=l;printf(Hd=%d\n",d);

if(x>0)y=1;elsey=0;)

elsey=-l;A)d=20B)d=10C)d=15D)25

59、有如下程序62、有如下程序:

#include<stdio.h>#include<stdio.h>

voidmain()voidmain()

{floatx=5.0,y;{inta=2,b=-1,c=2;

if(x<0.0)y=0.0;if(a<b)

elseif(x<10.0)y=1.0/x;if(b<0)c=0;

elsey=1.0;elsec++;

printf(n%ftn",y);printf("%d\n”,c);

))

该程序的输出结果是C.该程序的输出结果是_C.

A)0.000000B)0.50000A)0B)1C)2D)3

C)0.200000D)1.000000

63、下列程序执行后的输出结果是B.

60、以下程序的执行结果是—B.#include<stdio.h>

#include<stdio.h>voidmain()

voidmain(){intx,y=l,z;

{intx=l,y=0;if((z=y)<0)x=4;

switch(x)elseif(y==0)x=5;

(elsex=6;

case1:printf(u%d,%d\nu,x,y);

switch(y))

(A)4,1B)6,lC)5,0D)出错信息

caseO:printf("first\nn);break;

case1:printf("second\n");break;64、有如下程序

)#include<stdio.h>

case2:printf('^third\n'^);voidmain()

){intx=l,a=0,b=0;

)switch(x)

A)firstB)first(

secondthirdcase0:b++;

C)firstD)secondcase1:a++;

thirdcase2:a++;b++;

)

61、以下程序的执行结果是—A—.printf(',a=%d,b=%d\nu,a,b);

#include<stdio.h>)

voidmain()该程序的输出结果是A.

{inta,b,c,d,x;A)a=2,b=1B)a=l,b=lC)a=l,b=0D)a=2,b=2

a=c=0;

b=l;65、下面程序的输出结果是一C.

d=20;#include<stdio.h>

voidmain()elseprintf("%d\n",x・・);

{inta=-l,b=l,k;}

if((++a<0)&&(b-<=0))A)7B)6C)5D)4

printf(M%d%d\nM,a,b);

else71、以下程序段运行结果是一A—.

printf(u%d%d\nH,b,a);intx=l,y=l,z=-l;

)x+=y+=z;

A)-l1B)01C)10D)00printf("%d\n",x<y?y:x);

66、假定w、x、y、z、m均为int型变量,有如下程A)1B)2C)4D)不确定的值

序段:72、有以下程序

w=l;x=2;y=3;z=4;#include<stdio.h>

m=(w<x)?w:x;m=(m<y)?m:y;m=(m<z)?m:z;voidmain()

则该程序段执行后,m的值是一D.{inta,b,c=246;

A)4B)3C)2D)1a=c/100%9;

b=(-l)&&(-l);

67>以下程序的输出结果是_D.printf("%d,%d\nM,a,b);

main())

{inta=100;输出结果是—A—.

if(a>100)printf(n%d\n",a>100);A)2,1B)3,2C)4,3D)2,-1

elseprintf(n%d\n",a<=100);

)73、运行下面程序时,若从键盘输入数据为“123”,

A)a<=100B)100C)0D)1则输出结果是_C.

#include"stdio.h"

68、若执行下面的程序从键盘上输入9,则输出结果voidmain()

是.B{intnum,i,j,k,place;

#include<stdio.h>scanf(M%d",&num);

voidmain()if(num>99)

{intn;place=3;

scanf("%d",&n);elseif(num>9)

if(n++<10)printf(n%d\nM,n);place=2;

elseprintf(H%d\n",n—);}else

A)IlB)10C)9D)8place=l;

i=num/100;

69、以下程序输出结果是D.j=(num-i*100)/10;

#include<stdio.h>k=(num-i*100-j*10);

voidmain()switch(place)

{intm=4;{case3:printf(n%d%d%d\n",k,j,i);

if(++m>5)printf("%d\nH,m-);break;

elseprintf("%d\n",-m);case2:printf("%d%d\n'\k,j);

)break;

A)7B)6C)5D)4case1:printf("%d\n",k);

)

70、若执行下面的程序从键盘上输入5,则输出结果是.)

#include<stdio.h>A)123B)1,2,3C)321D)3,2,1

voidmain()

{intx;74、执行下列程序后的输出结果是—D—.

scanf("%d",&x);#include<stdio.h>

if(x++>5)printf(n%d\nu,x);voidmain()

{intk=4,a=3,b=2,c=l;C)在其之前尚未配对的最近的if

printf(n%d\n",k<a?k:c<b?c:a);D)同一行上的if

)

A)4B)3C)2D)180、设x、y、z、t均为int型变量,则执行以下语句

温馨提示

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

评论

0/150

提交评论