C语言考试题库及答案.docx

上传人:b****8 文档编号:29903169 上传时间:2023-08-03 格式:DOCX 页数:100 大小:79.82KB
下载 相关 举报
C语言考试题库及答案.docx_第1页
第1页 / 共100页
C语言考试题库及答案.docx_第2页
第2页 / 共100页
C语言考试题库及答案.docx_第3页
第3页 / 共100页
C语言考试题库及答案.docx_第4页
第4页 / 共100页
C语言考试题库及答案.docx_第5页
第5页 / 共100页
点击查看更多>>
下载资源
资源描述

C语言考试题库及答案.docx

《C语言考试题库及答案.docx》由会员分享,可在线阅读,更多相关《C语言考试题库及答案.docx(100页珍藏版)》请在冰豆网上搜索。

C语言考试题库及答案.docx

C语言考试题库及答案

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

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

#includeprintf("%d\n",--x);

voidmain()}

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

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

}#include

A)k=11,k=12,k=11B)k=11,k=13,k=13voidmain()

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

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

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

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

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

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

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

A)'\t'B)"A"C)65D)A#include

voidmain()

4、表达式:

10!

=9的值是________D____.{charch1,ch2;

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

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

5、C语言提供的合法的数据类型关键字是printf("%d,%c\n",ch1,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)ASCII码A)a<>0B)!

aC)a=0D)a

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

A)程序行B)语句C)函数D)字符#include

voidmain()

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

____D____printf("%d%d\n",x--,--y);

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

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

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

____B__.15、设有如下定义:

#includeintx=10,y=3,z;

voidmain()

则语句

{inta;printf("%d\n",z=(x%y,x/y));

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

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

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

16、为表示关系x≥y≥z,应使用C语言表达式

10、下面程序的输出是____B______.___A___.

#includeA)(x>=y)&&(y>=z)B)(x>=y)AND(y>=z)

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

-1-

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=12,则表达式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("%d",(x,y));__B_.

上面程序片段的输出结果是____A___.

A)20B)10C)21D)11

A)200B)100

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

#include

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

#include{

voidmain()inti,j;

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

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

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

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

}是____D____.

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

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

则程序的运行结果是__A_____.

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

#include

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

#include{

voidmain()inta=-1,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("%d,%d",i-j,i+j);

}26、下面程序的输出结果是____A____.

则程序的运行结果是____D____.#include

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

{

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

#includefloatx=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,1C)1,1D)0,0

i=8;j=10;

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

n=j++;inta;

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

}a=b;

程序的运行结果是______C____.

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

-2-

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

28、若有以下定义和语句:

38、C语言中的变量名只能由字母,数字和下划线三种

字符组成,且第一个字符____C____.inta=010,b=0x10,c=10;

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,y=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____.

数结束

#includeC)本程序的主函数开始,到本程序的最后一个函数结

voidmain()

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

inta=12,b=12;

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

的C语言表达式是____A____.}

A)10,10B)12,12C)11,10D)11,13A)10

C)a>10&&a<15D)!

(a<=10)&&!

(a>=15)

32、设有以下语句:

intx=10;x+=3+x%(3),则x的值

是.____A_____

42、下列程序执行后的输出结果是_____C____.

A)14B)15C)11D)12#include

voidmain()

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

是_____D__.if(a

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____.(假设已知空格ASCII码为32)A)0B)1C)12D)6

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",则程

序的输出结果是____D____.

37、在C语言中,以下叙述不正确的是_____A____.#include

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

的表示{

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

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

-3-

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

printf("x==y");elseif((a<0.5)&&(a!

=2.0))b=1.0/(a+2.0);

elseif(x>y)elseif(a<10.0)b=1.0/2;

printf("x>y");elseb=10.0;

elseprintf("%f\n",b);

printf("x

}A)0.000000B)0.500000

A)3<5B)5>3C)x>yD)x

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

"6,5,7",则输出结果是____C___.#include

#includevoidmain()

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

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

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

if(a>b)else

if(a>c){y=x;printf("y=%d",y);}

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

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

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

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

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

printf("%d\n",b);#include

elsevoidmain()

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

}scanf("%d,%d,%d",&x,&y,&z);

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

if(y

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

的运行结果是____A____.

elseif(x

#includeelseprintf("%d\n",x);

voidmain()}

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

cp=getchar();

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

k=cp-'0';果是_____C___.

elseif(cp>='a'&&cp<='f')#include

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

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

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

}switch(ch)

A)2B)4C)1D)10{case'H':

printf("Hello!

\n");

case'G':

printf("Goodmorning!

\n");

47、运行下面程序时,从键盘输入"2.0",则输出default:

printf("Bye_Bye!

\n");

结果是___B_____.

}

#include}

voidmain()A)Hello!

B)Hello!

{floata,b;GoodMorning!

scanf("%f",&a);C)Hello!

D)Hello!

-4-

Goodmorning!

Bye_Bye!

#include

Bye_Bye!

voidmain()

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

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

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

x+=y+=z;printf("%d,%d\n",x,z);

printf("%d\n",x

y:

x);}

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

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

&&ch<='Z')?

ch+32:

ch的值是__B___.等级:

A分数:

85~100

等级:

B分数:

60~84A)ZB)aC)zD)A

等级:

C分数:

60以下

对于等级grade输出相应的分数区间,能够完成该功

53、下面程序的输出结果是____C____.

能的程序段是____D____.#include

voidmain()A)switch(grade)

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

if(x

printf("85--100\n");

if(y<0)z=0;case'B':

printf("60--84\n");

elsez-=1;case'C':

printf("60以下\n");

printf("%d\n",z);default:

printf("等级错误!

\n");

}}

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

{

54、运行下面程序时,若从键盘输入"5",则程序的case'A':

printf("85--100\n");break;

输出结果是_____B___.case'B':

printf("60--84\n");

#includecase'C':

printf("60以下\n");

voidmain()default:

printf("等级错误!

\n");

{inta;}

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

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

elseprintf("%d\n",a--);case'A':

printf("85--100\n");break;

}case'B':

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

A)7B)6C)5D)4case'C':

printf("60以下\n");

default:

printf("等级错误!

\n");

55、运行下面程序时,若从键盘输入"3,4",则}

程序的输出结果是____B___.

D)switch(grade)

#include{

voidmain()case'A':

printf("85--100\n");break;

{inta,b,s;case'B':

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

scanf("%d,%d",&a,&b);case'C':

printf("60以下\n");break;

s=a;default:

printf("等级错误!

\n");

if(s

s=s*s;

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

}┌-1x<0

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

└1x>0

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

-5-

if(x!

=0)if(x>0)y=1;if(a)d=d-10;

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

b)

elsey=0;elsey=-1;if(!

c)x=15;

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

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

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

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

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

#include#include

voidmain()voidmain()

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

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

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

elsey=1.0;elsec++;

printf("%f\n",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

#includevoidmain()

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

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

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

{elsex=6;

case1:

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

switch(y)}

{

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

case0:

printf("first\n");break;

case1:

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

}#include

case2:

printf("third\n");voidmain()

}{intx=1,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\n",a,b);

#include}

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

{inta,b,c,d,x;A

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 小学教育 > 学科竞赛

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1