春考历年c语言考试题及答案_第1页
春考历年c语言考试题及答案_第2页
春考历年c语言考试题及答案_第3页
春考历年c语言考试题及答案_第4页
春考历年c语言考试题及答案_第5页
已阅读5页,还剩25页未读 继续免费阅读

下载本文档

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

文档简介

春考历年C语言考试题及答案

1.以下叙述正确的是()。[单选题]*

A)在对一个C程序进行编译的过程中,可发现注释中的拼写错误

B)在C程序中,main函数必须位于程序的最前面

C)C语言本身没有输入输出语句:正饭答案)

D)C程序的每行中只能写一条语句

2.一个C程序的执行是从()。|单选题I*

A)本程序的main函数开始,到main函数结束正能答案)

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

C)本程序文件的第一个函数开始,到本程序main函数结束

D)本程序的main函数开始,到本程序文件的最后一个函数结束

3.以下叙述不正确的是()。[单选题]*

A)一个C源程序必须包含一个main函数

B)一个C源程序可由一个或多个函数组成

C)C程序的基本组成单位是函数

D)在C程序中,注释说明只能位于一条语句的后面正确答案)

4.计算机高级语言程序的运行方法有编译执行和解释执行两种,以下叙述中正确

的是()。[单选题]*

A)C语言程序仅可以编译执行正彳

B)C语言程序仅可以解释执行

C)C语言程序既可以编译执行又可以解释执行

D)以上说法都不对

5.一个C语言程序是由()。[单选题]*

A)一个主程序和若干个子程序组成

B)函数组成(正确答案)

C)若干过程组成

D)若干子程序组成

6.以下叙述中错误的是()o[单选题]*

A)C语言的可执行程序是由一系列机器指令构成的

B)用C语言编写的源程序不能直接在计算机上运行

C)通过编译得到的二进制目标程序需要连接才可以运行

D)在没有安装C语言集成开发环境的机器上不能运行C源程序生成的.exe文件(正

确答案)

7.若x、i、j、k都是血型变量,则计算下面表达式后,x的值为()。

x=(i=4,j=16,k=32)[单选题]*

a)4

B)16

C)32(正确答案)

D52

8.以下叙述正确的是()o[单选题]*

A)C语言程序是由过程和函数组成的

B)C语言函数可以嵌套调用,例如:fun(fun(x))(1

0c语言函数不可以单独编译

D)C语言中除了main函数,其他函数不可作为单独文件形式存在

9.下列四组选项中,均不是C语言关键字的选项是()。[单选题]*

A)dei2tempt正A答A)

B)getccharprintf

C)includecasescanf

D)whilcgopow

10.下列四组选项中,均是不合法的用户标识符的选项是()。[单选题]*

A)WP_0do

B)b-agotoint正确答案)

C)floatlaO_A

D)-123abcTEMP

H.下面不正确的字符常量是()o[单选题]*

A)“c”(正确答案)

Bf

C)t?

D),K'

12.下列四组选项中,均是合法转义字符的选项是()。[单选题]次

A)'"''\n'(正确答案)

B)'\''\017‘

C)''018''f'xab'

D)<\\0,4\ior4xlf

13.以下叙述不正确的是()。I单选题1*

A)在C程序中,逗号运算符的优先级最低

B)在C程序中,MAX和max是两个不同的变量

C)若a和b类型相同,在计算了赋值表达式a=b后,b中的值将放入a中,而b中

的值不变

D)当从键盘输入数据时,对于整型变量只能输入整型数值,对于实型变量只能输

入实型数值(正确答案)

14.已知字母A的ASCII码为十进制数65,且c2为字符型,

则执行语句c2=,A+6,-3B,c2中的值为()。[单选题]*

A)D(正确答案)

B)68

C)不确定的值

D)C

15.以下叙述正确的是()。[单选题

A)在C程序中,每行只能写一条语句

B)若a是实型变量,C程序中允许赋值a=10,因此实型变量中允许存放整型数正

确答案)

。在C程序中,%是只能用于整数运算的运算符(字符型也可以)

D)在C程序中,无论是整数还是实数,都能被准确无误地表示

16.012©04110@1)是()。[单选题|*

A)一个双精度型表达式

B)一个整型表达式G

C)一种函数表达式

D)一^不合法的表达式

17.设有说明:charw;intx;floaty;doublez;则表达式w*x+z-y值的数据类型为

()。[单选题]*

A)float

B)char

C)int

D)double(正确答案)

18.设C语言中,一个int型数据在内存中占2个字力,则unsignedint型数据的取

值范围为()o[单优题]*

A)0~255

B)0~32767

C)0~65535(F确答案)

D)0-2147483647

19.设以下变量均为ini类型,则值不等于7的表达式是()。[单选题]*

A)(x=y=6,x+y,x+l)

B)(x=y=6,x+y,y+l)

C)(x=6,x+l,y=6,x+y)(正确答案)

D)(y=6,y+l,x=y,x十1)

20.下列变量定义中合法的是()。[单选题]*

A)short_a=015;(正确答乡

B)doubleb=e2.5;

C)longdo=0xfdaL;

D)float2_and=le-3;

21.有以下程序

#include<stdio.h>

main()

{intx=011;

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

程序运行后的输出结果是()oI单选题]*

A)12

B)ll

C)10(正确答案)

D)9

22.以下正确的描述是().[单选题1*

a)continue语句的作用是结束整个循环的执行

b)只能在循环体内和switch语句体内使用break语句:正确答案)

c)在循环体内使用break语句或continue语句的作用相同

d)从多层循环嵌套中退出时,只能使用got。语句

23.putchar函数可以向终端输出一个()o[单选题]*

A)整型变量表达式

B)实型变量值

C)字符串

D)字符或字符型变量值二确答案)

24.根据下面的程序及数据的输入和输出形式,程序中输入语句的正确形式应该

为()。

main()

{charchl,ch2,ch3;

输入语句

printf(u%c%%c,\chl,ch2,ch3);

}输出形式:ABC

输入形式:ABC[单选题]*

A)scanf(u%c%c%c,,,&chl,&ch2,&ch3);

B)scanf(t4%c,%c,%c\&ch1,&ch2,&ch3);

C)scanf(u%c%c%c”,&chl,&ch2,&ch3);(正确答案)

D)scanf("%c%c”,&ch1,&ch2,&ch3);

25.阅读以下程序,当输入数据的形式为:25,13,10<CR>(注:<CR>表示回

车),则正确的输出结果为()。

main()

{intx,y,z;

scanfC%d%d%d”,&x,&y,&z);

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

}[单选题]*

a)x+y+z=48

b)x+y+z=35

c)x+z=35

d)不确定值

26.已知ch是字符型变量,下面不正确的赋值语句是()oI单选题]*

A)ch='a'+'b';(]

B)ch=t\O,;

C)ch='7'+'9';

D)ch-5+9;

27.以下关于结构化程序设计的叙述中正确的是()。[单选题]*

A)一个结构化程序必须同时由顺序、分支、循环三种结构组成

B)结构化程序使用got。语句会很便捷

C)在C语言中,程序的模块化是利用函数实现的IF确答案)

D)由三种基本结构构成的程序只能解决小规模的问题

28.有以下程序

#includc<stdio.h>

main()

{intal,a2;charcl,c2;

scanf("%d%c%d%c”,&al,&c1,&a2,&c2);

printf(tt%d,%c,%d,%c,,,al,cI,a2,c2);

若想通过键盘输入,使得al的值为12,a2的值为34,cl的值为字符a,c2的值

为字符b,程序输出结昊是:12,a,34,b则正确的输入格式是().(以下一

代表空格,<CR>代表回车)[单选题]*

A)12a34b(:

B)12_a_34_b

C)12,a,34,b

D)12_a34_b

29.逻辑运算符两侧运算对象的数据类型(),[单选题]*

A)只能是0和I

B)只能是。或非。正数

C)只能是整型或字符型数据

D)可以是任何类型的数据;确纪案)

30.判断char型变量ch是否为大写字母的正确表达式是()。[单选题]*

A)'A'v=chv='Z'

B)(ch>=tA,)&(ch<=tZ,)

C)(ch>=A)&&(ch<=Z)(正确答案)

D)(4A><=ch)AND(fcZ,>=ch)

31.若希望当A的值为奇数时,表达式的值为“真'A的值为偶数时,表达式的

值为“假”。则以下不能满足要求的表达式是()。[单选题]*

A)A%2==l

B)!(A%2==0)

C)!(A%2)(正确答案)

D)A%2

32.设有:inta=l,b=2,c=3,d=4,m=2,n=2;

执行(m=a〉b)&&(n=c〉d)后n的值为()。[单选题]*

A)1

B)2(1

C)3

D)4

33.以下程序的运行结果是()o

main()

{inta,b,d=241;

a=d/100%9;

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

printf("%d,%d”,a,b);

}[单选题]*

A)6,1

B)2,1(正确答案)

C)6,0

D)2,0

34.已知intx=10,y=20,z=30;以下语句执行后x,y,z的值是()。

if(x>y)z=x;x=y;y=z;[单选题]*

A)x=10,y=20,z=30

B)x=20,y=30,z=30(正确答案)

C)x=20,y=30,z=IO

D)x=20,y=30,z=20

35.以下程序的运行结果是()。

main()

{intm=5;

if(m++>5)

else;

printf("%d\n”,m--);

}I单选题]*

A)4

B)5

C)6(正确答案)

D)7

36.if语句的基本形式是:if(表达式)语句,以下关于“表达式”值的叙述中正确的是

()o[单选题]*

A)必须是逻辑值

R)必须是整数值

C)必须是正数

D)可以是任意合法的数臂正确答案)

37.若运行时给变量x输入12,则以下程序的运行结果是()。

main()

{intx,y;

scanf("%d'',&x);

y=x>i2?x+10:x-12;

printf(''%d\n'',y);

}[单选题]*

A)4

B)3

C)2

D)0(正确答§

38.有以下程序

#include<stdio.h>

main()

{intc=O,k;

for(k=1;k<3;k++)

switch(k)

(default:c+=k;

case2:c++;break;

case4:c+=2;break;

)

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

}程序运行后的输出结果是()o[单选题]*

A)3(正确答案)

B)5

C)7

D)9

39.设有程序段intk=10;while(k=O)k=k-l;这下面描述中正确的是().[单选题]

A)while循环执行10次

b)循环是无限循环

c)循环体语句一次也不执行正确铃案)

d)循环体语句执行一次

40.有以下程序

#include<stdio.h>

main()

{inta=l,b=O;

if(!a)b++;

elseif(a==O)if(a)b+=2;

elseb+=3;

printf("%d\n”,b);

)

程序运行后的输出结果是()o[单选题]*

A)0(正确答案)

B)1

C)2

D)3

41.语句while(!E);中的表达式!E等价于().[单选题]中

a)E==0

b)E!=l

c)E!=0(.Tl确答案)

d)E==l

42.下面程序的运行结果是().

#includc<stdio.h>

main()

{intnum=0;

while(num<=2)

{num++;

printf("%d\nn,nuni);

)

}I单选题]*

a)l

b)

1

2

C)(:

1

2

3

D)

1

2

3

4

43.有以下程序

main()

{charb,c;inii;

b='a';c='A';

for(i=0;i<6;i++)

{if(i%2)putchar(i+b);

elseputchar(i+c);

1

printf("\n");

)

程序运行后的输出结果是().[单选题]*

A)ABCDEF

B)AbCdEf(正确答案)

C)aBcDeF

D)abcdef

44.若有如下语句

intx=3;

do

{printf("%d\n”,x-=2);

}while(!(-x));

则上面程序段().【单选题I*

A)输出的是1

B)输出的是1和-2(正确答窠)

。输出的是3和0

D)是死循环

45.以下程序段().

x=-l;

do

1

x=x*x;

)while(!x);[单选题]*

A)是死循环

B)循环执行二次

C)循环执行一次确答案)

D)有语法错误

46.下面程序的运行结果是().

#include<stdio.h>

main()

{inty=10;

do{y—;}while(-y);

printfC'%d\n",y-);

}I单选题]*

a)-l

b)I

c)8

d)0(正确答案)

47.执行语句for(i=l;i++<4;);后变量i的值是().[单选题]*

a)3

b)4

c)5,正确答案)

d)不定

48.若i为整型变量,则以下循环执行次数是().

for(i=2;i==0;)printf("%d",i-);[单选题]*

a)无限次

b)0次正能答案)

c)l次

d)2次

49.printf函数中用到格式符%5s,其中数字5表示输出的字符串占用5歹人如果

字符串长度大于5,则输出按方式();如果字符串长度小于5,则输出按方式

()。*

A)从左起输出该字符串,右补空格

B)按原字符长从左向右全部输出(二

C)右对齐输出该字符串,左补空格,

D)输出错误信息

50.下面程序段的运行结果是()循环次数为().

intn=0;while(n++<=2);printf(,'%d',,n);*

a)2(正确答案)

b)3(正确答案)

c)3

d)有语法错

班级:[单选题]*

c经贸20.7c经贸20.8

1.若有定义inia口[4]={0,1,2,3,4,5,6,7,8910,II};,则数组的第一维的大小为0[单

选题]*

A)3(正确答案)

B)2

C)4

D)不确定

2.下列描述中不正确的是:()[单选题]*

A)字符型数组可以存放字符串

B)可以对字符型数组进行整体输入、输出

C)可以对整形数组进行整体输入、输出正价答案)

D)不能在赋值语句中通过赋值运算符“=”对字符型数组进行整体赋值。

3.若要定义一个具有5个元素的整型数组,以下语句中错误的是:()[单选题]号

A)inta[5]={0);

B)intb[]=(0,0,0,0,0);

C)intc[2+3];

D)intn=5;d[n];(正确答案)

[填空题I

4.以下叙述中不正确的是0

[单选题]*

A)建立函数的目的^是为了提高程序的效率(正确答案)।碓答三)

B)建立函数的目的之一是为了提高程序的可读性

C)建立函数的目的之是为了提高程序员的生产效率

D)函数的递归调用不能提高程序的执行效率

5.阅读以下程序:()[单选题]*

f(intb[],intn)(正确答案)

(

inti,r;

r=1;

for(i=0;i<=n;i++)

r=r*b[i];

returnr;

)

main()

{intx,a[]={2,3,4,53,7,8,9};

x=f(a,3);

printf("%d\n';x);

)

上面程序输出结果是

A)720[单选题]*

B)120(4确答案)

C)24

D)6

6.C语言程序中,若对函数类型未加显式声明,则函数的隐含类型为()

[单选题I*

A)double

B)int(正确答案)

C)char

D)void

7.以下对C语言函数的有关描述中,正确的是0

[单选题]*

A)在C中,调用函数时,只能把实参的值传送给形参,形参的值不能传给实参(正

确答案)(正确答案)

B)C函数既可以嵌套定义,又可以递归调用

C)函数必须有返回值,否则不能使用函数

D)C程序中有调用关系的所有函数必须放在同一个源程序文件中

8.有下列程序,执行后的输出结果是()[单选题]*

fun(intx,inty){return(x+y);}(正确答案)

main()

{inta=l,b=2,c=3,sum;

sum=fun((a++,b++,a+b),C++);

printf("%(1\n",sum);

)

A)6[单选题]*

B)7

C)8正确答案)

D)9

9.以下程序的输出结果是()[单选题]*

fun(intx,inty,intz)(正碇空案)

{z=x*x+y*y;

)

main()

{inta=31;

fun(5,2,a);

printf("%d",a);

1

A)0[单选题]*

B)29

C)31(正确答案)

D)无定值

10.执行下列程序时,给变量X输入10,程序的输出结果是0【单选题]*

intfun(intn)(正确答案)

{if(n-1)return1;

else

return(n+fun(n-l));

)

main()

{intx;

scanf(n%d'\&x);

x=fun(x);

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

}

A)55(正确答案)[单选题]*

B)54正确答案)

C)65

D)45

H.以下程序运行后的输出结果是()[单选题]*

vuidl、un(inip)(正猊答案)

{intd=2;

p=d++;

printf("%d”,p)}

)

main()

{inta=l;

fun(a);

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

)

A)32[单选题]*

B)12

C)21(正确答案)

D)22

12.下叙述中不正确的是:()[填空题]

A)在函数中,通过return语句传回函数值[单选题]*

B)在函数中,可以有多条return语句

。在C程序中,主函数main。后的一对园括号中也可以带有形参

D)在C程序中,调用函数必须在一条独立的语句中完成。(正确答案)

130.以下程序的输出结昊是:()[单选题]*

a,int(确答案)

b,int

c)

d”;c);

A)0[单选题]*

B)3

C)9

D)无定值(正确答案)

14.以下关于结构化程序设计的叙述中正确的是()。[填空题]

A)一个结构化程序必须同时由顺序、分支、循环三种结构组成[单选题]*

B)结构化程序使用got。语句会很便捷

C)在C语言中,程序的模块化是利用函数实现的王确答案)

D)由三种基本结构构成的程序只能解决小规模的问题

A)只能是0和1[单选题]*

B)只能是。或非。正数

C)只能是整型或字符型数据

D)可以是任何类型的数据(二确答案)

15.若希望当A的值为奇数时,表达式的值为“真二A的值为偶数时,表达式的

值为“假工则以下不能满足要求的表达式是0。[填空题]

A)A%2==1[单选题]*

B)!(

B)!(A%2==0)

C)!(A%2)(正确答案:

D)A%2

16.以下程序的运行结果是()。[单选题]*

main()(正确答案)

{inta,b,d=24i;

a=d/100%9;

b=(D&&(1);

printf(tt%d,%d,,,a,b);

)

A)6』[单选题]*

B)2,1(正确答案)

C)6,0

D)2,0

17.已知intx=10,y=知,z=30;以下语句执行后x,y,z的值是()[单选题]*

if(x>y)z=x;x=y;y=z;(正确答案)

A)x=10,y=20,z=30[单选题]*

B)x=20,y=30,z=30(正确答案)

C)x=20,y=30,z=10

D)x=20,y=30,z=20

18.若运行时给变量x输入12,则以下程序的运行结果是()。

main()

{intx,y;

scanf("%d",&x);

y=x>12?x+10:x-12;

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

}I单选题]*

A)4

B)3

C)2

D)0(正确答案)

19.有以下程序[单选题]*

#include<stdio.h>

main()

{intc=O,k;

for(k=l;k<3;k++)

switch(k)

{dcfault:c+=k;

case2:c++;break;

case4:c+=2;break;

)

printfCt%d\n,,,c);

}程序运行后的输出结果是()

A)3(正确答案)[单选题]*

B)5(正确答案)

C)7

D)9

20.设有程序段intk=10;while(k=0)k=k-l;这下面描述中正确的是().[填空题]

A)while循环执行10次[单选题]*

B)循环是无限循环

C)循环体语句一次也不执行正确答案)

D)循环休语句执行一次

21.下面程

温馨提示

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

评论

0/150

提交评论