海南大学C语言考试题库及答案_第1页
海南大学C语言考试题库及答案_第2页
海南大学C语言考试题库及答案_第3页
海南大学C语言考试题库及答案_第4页
海南大学C语言考试题库及答案_第5页
已阅读5页,还剩27页未读 继续免费阅读

下载本文档

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

文档简介

C语言理论上机考试选择题部分(共20()题,仅针府11级定向专业)

1、下面程序的输出是D#inchide<stdio.h>

#indudc<stdio.h>voidmain()

voidmain(){charch1,ch2;

{in:k=ll;chl='A'+5-3;

printf("k=%d,k=%o,k=%x\n",k,k,k);ch2='A'+'6'-,3';

Iprintf(M%d,%c\n",ch1,ch2);

A)k=ll,k=12,k=llB)k=ll,k=i3,k=131

C)k=ll,k=013,k=0xbD)k=ll,k=l3,k=bA)67,DB)B,CC)C,DD)不确定的值

2、在下列诜项中.不正确的赋值语句是D13、若要求在if后一对圆括号中表示a不等于。的关

A)I«t;B)nl=(n2=(n3=0));系,则能正确表示这一关系的表达式为一—D_.

C)k=i=j;D)a=b+c=1;A)a<>0B)!aC)a=0D)a

3、下而合法的C语言字符常量是A14、以下程序的输出结果是一D_____

A)MB)"A"C)65D)A#include<stdio.h>

4、表达式:10!=9的值是________D____.voidmain()

A)trueB)非零值C)0D)1{intx=10,y=10;

5、C语言提供的合法的数据类型关键字是B.printf("%d%d\n",x-,-y);

A)DoubleB)shortC)integerD)Char)

6、字符(char)型数据在微机内存中的存储形式是_D_.A)1010B)99C)910D)109

A)反码B)补码C)EBCDIC码D)ASCII码15、设有如下定义:

7、C语言程序的基本单位是Cintx=10.y=3,z;

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

8、设inta=12,则执行完语句a+=a-=a*a后,a的值是printf("%d\n",z=(x%y.x/y));

____D____的输出结果是____D______.

A)552B)264C)144D)-264A)1B)0C)4D)3

9、执行下面程序中的输出语句后.输出结果是B.16、为表示关系x2y2z,应使用C语言表达式—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)

{inta;17、C语言中非空的基本数据类型包括B.

printf(',%d\n",(a=3*5,a*4,a+5));A)整型,实型,逻辑型B)整型,实型,字符型

IC)整型,字符型,逻辑型

A)65B)20C)15D)10D)整型,实型,逻辑型,字符型

10、下面程序的输出是一B______.18、若x和y都是int型变量,x=100,产200,且有下面的

#include<stdio.h>程序片段:

voidmain()printf("%d",(x,y));

{intx=023;上面程序片段的输出结果是一A_.

printf(',%d\n",-x);A)200B)100

IC)100200D)输出格式符不够输出不确定的值

A)17B)18C)23D)2419、阅读下面的程序

11、下面程序的输出的是____C_.#includc<stdio.h>

#include<stdio.h>voidmain()

voidmain(){

{intx=10,y=3;charch;

printf("%d\n",y=x/y);scanf("%3c",&ch);

)printf("%c'\ch);

A)0B)1C)3D)不确定的值1

12、已知字母A的ASCII码为十进制供J65,下面程序如果从键盘上输入

的输出是______A_____.abcv回车〉

则程序的运行结果是_A.k=(++a<=0)&&(b-<=0);

A)aB)bC)cD)程序语法出错printf("%d,%d,%d\nH,k,a,b);

20、阅读下面的程序I

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

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

(#include<stdio.h>

inti,j;voidmain()

i=010;(

j:9;inta=5,b=3;

prinlf("%d,%d';i-j,i+j);floatx=3.l4,y=6.5;

}printf("%d,%d\n",a+h!=a-h,x<=(y-=6.1));

则程序的运行结果是—D—.I

A)1J9B)-1J9C)1,17D)-l,17A)1,0B)0,lC)1,1D)0,0

21、阅读下面的程序27、执行下面程序段后,输出结果是—A—.

#include<stdio.h>inta;

voidmain()intb=65536;

(a=b;

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

i=8;j=10;A)65536B)0C)-lD)1

m=++i;28、若有以下定义和语句:

n=j++;inta=010,b=0xl0,c=10;

prinlf("%d.%d.%d,%d",i,j,m,n);piinlf("%d.%d,%d\n",a,b,c);

I则输出结果是B.

程序的运行结果是C.A)10,10,10B)8,16,10C)8,10.10D)8,8,10

A)8,10,8,10B)9,11,8,1029、已知有double型变量x=2.5,y=4.7,整型变量a=7,

C)9,11,9,10D)9,10,9,11则表达式x+a%3*(int)(x+y)%2/4的值是B.

22已知a=l2,则表达式a+=a-=a*=a的结果是A)2.4B)2.5C)2.75D)0

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

A)0B)144C)12D)-264y=2.75+x/2的值是C.

23、若已定义inta,则表达式a=10,a+10,a++的值是_B_.A)5.5B)5C)3D)4.0

A)20B)10C)21D)1131、以下程序的输出结果是一D—.

24、阅读下面的程序#include<stdio.h>

#include<stdio.h>voidmain()

voidmain(){

|inta=12,b=12;

printf("%d,%d\n",-a,++b);

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

printf("i=%dj=%d\n",ij);A)10,10B)12,12C)11,10D)11,13

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

如果从键盘上输入1234567〈回车〉,则程序的运行结果是.A

是D.A)14B)15C)11D)12

A)i=123,j=4567B)i=1234,j=56733、若d为double型变量,则表达式d=l,d+5,d++的值

C)i=l,j=2D)i=123,j=45是D_.

25、下面程序的输出结果是D.A)IB)6.0C)2.0D)1.0

#include<stdio.h>34、表达式5!=3的值是D.

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

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

inta=-1,b=4,k;的值A.

A)0B)1C)12D)6

36、若有定义intx=3,y=2和floata=2.5,b=3.5,贝ij表达intx,y;

式:(x+yj%2+(ini)a/(in【)b的值是_D_.scanf("%d,%d';&x,&y);

A)0B)2C)1.5D)1if(x==y)

37、在C语言中,以下叙述不正确的是A.printf("x==y");

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

的表示printf("x>y");

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

C)静态变量的生存期与整个程序的生存期相同printf("x<y");

D)C语言中变量必须先定义后引用)

懦、C语言中的变量名只能由字母,数字和下划线二种A)3<SR)5>3C)x>yD)x<y

字符组成,且第一个字符一C—.45、运行下面程序时,若从键盘输入数据为

A)必须为字母"6.5,7<CR>",则输出结果是C_.

B)必须为下划线#include<stdio.h>

C)必须为字母或下划线voidmain()

D)可以是字母,数字或下划线中的任意一种{inta,b,c;

39、设有说明:charw;intx;floaty;doublez;则表达式:scanf("%d,%d,%d”,&a.&b,&c);

w*x+z-y值的数据类型是___D.if(a>b)

A)floatB)charC)intD)doubleif(a>c)

40、一个C语言的执行是从A.printf("%d\n,',Q);

A)本程序的主函数开始,到本程序的主函数结束else

B)本程序的第一个函数开始,到本程序的最后一个函printf("%d\n",c);

数结束else

C)本程序的主函数开始,到本程序的最后一个函数结if(b>c)

束printf("%d\nn,b);

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

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

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

A)10<a<15B)a==11||a==12||a==13||a==14A)5B)6C)7D)不定值

C)a>10&&a<15D)!(a<=10)&&!(a>=15)46、执行下面程序时,若从键盘输入“2<CR>",则程序

42、下列程序执行后的输出结果是C.的运行结果是一A—.

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

voidmain()voidmain()

{inta=5,b=60,c;{intk;charcp;

if(a<b)cp=getchar();

{c=a*b;printf("%d*%d=%d\n",b,a,c);}if(cp>='0'&&cp<='9')

elsek=cp-'0,;

)c=b/a;printf("%d/%d=%d\nH,b,a,c);}elseif(cp>='a'&&cp<='f)

)k=cp-'a'+10;

A)60/5=12B)300C)60*5=300D)12elsek=cp-'A'+10;

43、如果c为字符型变量,判断c是否为空格不能使printfC'%d\n",k);

用A.(假设已知空格ASCH码为32))

A)if(c=='32')B)if(c==32)A)2B)4C)1D)10

C)if(c=='\40')D)if(c=='')47、运行下面程序时,从键盘输入”2.0<CR>",则输出结

44、运行下面程序时,若从键盘输入”3,5<CR>",则程果是_B.

序的输出结果是—D—.#include<stdio.h>

#include<stdio.h>voidmain()

voidmain(){floata,b;

59、有如下程序

A)3,0B)0,0C)0,1D)3,1#include<stdio.h>

57、假定等级和分数有以下对应关系:voidmain()

等级:A分数:85〜100(floatx=5.0,y;

等级:B分数:60〜84if(x<0.0)y=0.0;

等级:C分数:60以下elseif(x<10.0)y=1.0/x;

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

能的程序段是一D—.printf("%f\n';y);

A)switch(grade))

(该程序的输出结果是一C.

case'A':printf(”XS・」OO\n");A)0.000000R)0.50000

caseB:printf(”60--84\n”);C)0.200000D)1.00000()

case'C':printf("60以下\n");60、以下程序的执行结果是_B.

defaukprintf("等级错误八n");#include<stdio.h>

}voidmain()

B)switch(grade){intx=1,y=0;

{switch(x)

case'A':piintf("85-100\n"):break;{

case'B':printf("60-84\n");caseI:

case'C':piintf("60以下\n");switch(y)

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

}caseOiprintfCfirst^',);break;

C)switch(grade)case1:printf("second\n");brcak;

{)

case'A':printf("85--100\n");brcak;case2:printf("third\n");

caseB:prinE”60--84\n”);break;)

case'C':printf("60以下\n");)

default:printf("等级错误!\n");A)firstB)first

}secondthird

D)switch(grade)C)firstD)second

{third

case'A,:printf("85-100\n'();break;61、以下程序的执行结果是—A—.

case'B':printf("60"84\n");break;#include<stdio.h>

case'C':pnntf("60以下\n");break;voidmain()

default:printf("等级错误八n");{inta,b,c,d,x;

}a=c=0;

58、能够完成如下函数计算的程序段是_B—.b=l;

r-1x<0d=20;

y=Tox=0if(a)d=d-10;

Lix>0elseif(!b)

A)y=l;B)if(x>=0)if(!c)x=15;

if(x!=0)if(x>0)y=l;elsex=25;

if(x>0)y=l;elsey=0;pjintf("d=%d\ii",d);

elsey=0;elsey=-l,)

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

if(x>=0)if(x>0)y=l;62、有如下程序:

if(x>0)y=l;elsey=0;#include<stdio.h>

elsey=-l;voidmain()

{inta=2,b=-l,c=2;67、以下程序的输出结果是_D.

if(a<b)main()

if(b<0)c=0;{inta=IOO;

elsec++;if(a>100)printf("%d\n',,a>100);

printf("%d\n",c);elseprintf("%d\n",a<=l(X));

))

该程序的输出结果是__C.A)a<=100B)10()C)0D)1

A)0B)1C)2D)368、若执行下面的程序从键盘上输入9,则输出结果

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

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

voidmain()voidmain()

{intx,y=!,z;{inin;

if((z=y)<0)x=4;scanf("%d".&n);

elseif(y==0)x=5;if(n++<10)printf("%d\n",n);

elsex=6;elseprintf(',%d\n',,n-);)

printf("%d,%d\n”,x,y);A)11B)10C)9D)8

)69、以下程序输出结果是D.

A)4JB)6,lC)5,0D)出错信息#include<stdio.h>

64、有如下程序voidmain()

升include<stdio.h>(intm=4;

voidmain()if(++m>5)printf("%d\n",m-);

{intx=l,a=0,b=0;elseprintf("%d\n",—m);

sv/itch(x))

(A)7B)6C)5D)4

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

case1:a++;#include<stdio.h>

case2:a++;b++;voidniain()

){intx;

printf("a=%d,b=%d\n",a,b);scanf("%d",&x);

)if(x++>5)printf("%d\n'\x);

该程序的输出结果是A.elseprintf(',%d\n",x—);

A)a=2,b=1B)a=l,b=lC)a=l,b=0D)a=2,b=2)

65、下面程序的输出结果是C.A)7B)6C)5D)4

#include<stdio.h>71、以下程序段运行结果是—A—.

voidniain()intx=l,y=l,z=-l;

{inta=-l,b=l,k;x+=y+=z;

if(i++a<0)&&(b-<=0))printf("%d\nM,x<y?y:x);

prin(f("%d%d\n",a,b);A)1B)2C)4D)不确定的值

else72、有以下程序

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

)voidniain()

A)-l1B)01C)10D)()0{inta,b,c=246;

66、假定w、x、y、z、m均为int型变量,有如下程a=c/100%9;

序段:b=(-1)&&(-!);

w=l;x=2;y=3;z=4;printf("%d,%d\n';a,b);

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

则该程序段执行后,m的值是—D.输出结果是___A.

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

73、运行下面程序时,若从键盘输入数据为“123”,if(k<=0)

则输出结果是_c____.elseprintf("####\n")

#include"stdio.h")

voidmain()A)####

{in(num,i,j,k,place;

scanf("%d",&num);C)####****

if(num>99)D)有语法错误不能通过编译

place=3;78、执行下面程序的输出结果是一C—.

elseif(num>9)#includc<stdio.h>

place=2;voidmain()

else{inta=5,h=0,c=0;

place=1;if(a=a+b)printf("****\n");

i=num/100;elseprintf("####\n");

j=(num-i*100)/10;I

k=(num-i*100-j*10);A)有语法错误不能编译

sv/itch(place)B)能通过编译,但不能通过连接

{case3:printf(',%d%d%d\n",kj,i);C)输出****

break;D)输出####

case2:printf("%d%d\n",k,j);79、为了避免嵌套的if-else语句的二义性,C语言规

break;定else总是与—C—组成配对关系.

case1:printf("%d\n",k);A)缩排位置相同的if

)B)在其之前未配对的if

}C)在其之前尚未配对的最近的if

A)123B)1,2,3C)321D)3,2,1D)同一行上的if

74、执行下列程序后的输出结果是—D—.80、设x、y、z、t均为血型变量,则执行以下语句

#include<stdio.h>后,1的值为____C______.

voidmain()x=y=z=1;

{intk=4,a=3,b=2,c=l;t=++x||++y&&++z;

piintf("%d\n",k<a?k:c<b?c:a);A)不定值B)4C)1D)0

)81、以下程序段—C_______.

A)4B)3C)2D)1x=-l;

75、以下条件表达式中能完全等价于条件表达式x的do

是___B_.{

A)(x==0)B)(x!=0)C)(x==l)D)(x!=l)x=x*x;

76、若运行下面程序时,给变量a输入15,则输出结果)while(!x);

是___A___.A)是死循环B)循环执行两次

#includc<stdio.h>C)循环执行一次D)有语法错误

voidmain()82、对卜面程序段描述止确的是_B____.

{inta,b;intx=0,s=0;

scanf(M%d",&a);while(!x!=0)s+=++x;

b=a>15?a+10:a-10;printf("%d",s);

printf("%d\n”,b);A)运行程序段后输出0

)B)运行程序段后输出1

A)5B)25C)15D)10C)程序段中的控制表达式是非法的

77、运行下面程序后,输出是_D_.D)程序段循环无数次

#include<stdio.h>83、下面程序段的输出结果是一C_.

voidmain()x=3;

{intk=-3;do{y=x-;

温馨提示

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

评论

0/150

提交评论