文档库 最新最全的文档下载
当前位置:文档库 › c语言期中考试试题及答案

c语言期中考试试题及答案

c语言期中考试试题及答案
c语言期中考试试题及答案

中国民航大学2009-2010学年第二学期

《C 语言程序设计》期中考试试卷

课程编号:03402513 试卷类型: A 卷 考试形式:笔试 考试日期:

注意事项:1.请将试卷最后一页的答题纸撕下,将答案填写在其中;2.交卷时请确认答题纸是否按要求写好姓名等信息并与试题一起上交;3.不准携带任何书籍、资料、纸张等。4.草稿纸用试卷的背面。 一、单项选择题(1空1分,共20分) 1、C 语言程序的基本结构是(【1】) 。

【1】 A) 函数 B) 语句 C)

字符 D) 程序行

2、一个C 程序的执行是(【2】) 。

【2】 A) 从本程序的主函数开始,到本程序的主函数结束

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

C) 从本程序的主函数开始,到本程序的最后一个函数结束

D)从本程序的第一个函数开始,到本程序的主函数结束3、下列四个叙述中,错误的是(【3】) 。

【3】 A) 一个C源程序必须有且只能有一个主函数

B) 一个C源程序可以含一个或多个子函数

C) 在C源程序中注释说明必须位于语句之后

D) C源程序的基本结构是函数

4、下面不属于C语言保留字的是(【4】) 。

【4】 A) short B) ELSE C) extern D) for 5、下列四个叙述中,正确的是(【5】) 。

【5】 A) 库函数也是C语言本身的组成部分

B) C语言中的输入输出操作是由相应语句完成的

C) 库函数是C编译系统提供的功能函数

D) 标题文件(头文件)可以在程序的函数内部调用

6、下列四组数据类型中,C语言允许的一组是(【6】)。

【6】 A) 整型、实型、逻辑型 B) 整型、实型、字符型

C) 整型、双精度型、布尔型 D) 整型、实型、复型

7、在C语言中不同数据类型的的长度是(【7】)。

【7】 A) 固定的 B) 由用户自己定义的

C) 任意的 D) 与机器字长有关

8、下列四组(八进制或十六进制)常数中,正确的一组是(【8】)。【8】 A) 016 0xbf 18 B) 0abc 017 0xa

C) 010 -0x11 0x16 D) 0A12 7FF -123

9、下列四组转义字符中,合法的一组是(【9】)。

【9】 A)‘\t’‘\\’‘\n’ B)‘\’‘\017’‘\x’

C)‘\018’‘\f’‘\xab’ D)‘\\0’‘\101’‘xif’

10、在C语言中,一个整型数据占两个字节,则int型数据的取值范围是(【10】)。

【10】 A) 32767 ~ -32768 B) 0 ~ 65535

C) 127 ~ -128 D) 0 ~ 255

11、经char w; int x; float y; double z;说明后,表达式 w*x+z-y 的类型是(【11】)。

【11】 A) float B) char C) int D) double 12、以下能正确定义变量a, b和c并为它们赋值的语句是(【12】)。【12】 A) int a=5; b=5; c=5; B) int a,b,c=5;

C) a=5,b=5,c=5; D) int a=5, b=5, c=5;

13、在C语言中,用于表示逻辑“真”的值是(【13】)。

【13】 A) T B) 1 C) -1 D) 非零值

14、经int a=7; float x=, y=;说明后,表达式x+a%3*(int)(x+y)%2/4 的值是(【14】)。

【14】 A) B) C) D)

15、若在一个表达式中含有int、 long int、 unsigned int和char 类型的常量和变量,则该表达式的类型是(【15】)。

【15】 A)int型 B)char型 C)unsigned int型 D)long int 型

16、在C语言中,如果一个int型数据占2个字节,则unsigned int 型数据取值范围是(【16】)。

【16】 A) 0~ 255 B) 0~ 32767 C) 0~ 65535 D) 0~ 47

17、在C语言中,下列四个长整型数中合法的是(【17】)。

【17】 A) 0L B) 4962 C) D)

18、若有说明语句:char c=‘\101’; 则变量c(【18】)。

【18】 A) 包含一个字符 B) 包含两个字符

C) 包含三个字符 D) 说明不合法

19、设变量a为整型,f为实型,i为双精度型,则表达式10+‘a’+i*f 的数据类型是(【19】)。

【19】A)int型 B)float型 C)double型 D)不确定

20、下列四个字符常量中,正确的是(【20】)。

【20】 A)“c” B)“\” C)‘W’ D)‘\w’

二、单项选择题(每空2分,共40分)

21、执行printf("%x,%o,%d\n",-1,-1,-1);后的输出结果是(【21】)。【21】 A) -1, -1, -1 B) ffff, -01, -1

C) ffff, 32767, -1 D) ffff, 177777, -1

22、已有定义int a=-2; 以下叙述中正确的是(【22】)。

【22】 A) 整型变量的输出格式符只有%d一种

B) %x是格式符的一种,它可以用于任何一种类型的数据

C) %x是格式符的一种,其变量的值按十六进制输出,但格式符 %32x 是错误的

D) %32x格式符中,数字32规定了输出字符的宽度

23、若有定义: int x=3, y=2; float a=, b=; 则表达式(x+y)%2+(int)a/(int)b的值是(【23】)。

【23】 A) 0 B) 2 C) D) 1

24、设int a=5, b=6, c=7, d=8, m=2, n=2; 则执行(m=a

【24】 A) 2 B) 1 C) 3 D) 4

25、设ch是char型变量, 其值为‘A’, 则表达式ch=(ch>=‘A’&& ch<=‘z’) (ch+32): ch 的值是(【25】)。

【25】 A) Z B) a C) z D) A

26、表达式5!=3的值是(【26】)。

【26】 A) T B) 非零值 C) 0 D) 1

27、若希望当A的值为奇数时, 表达式的值为"真", A的值为偶数时, 表达式的值为"假",则下面不能满足要求的表达式是(【27】)。【27】 A) A%2==1 B) !(A%2==0) C) !(A%2) D) A%2

28、为表示关系y在闭区间【x,z】内,应使用的C语言表达式是(【28】)。【28】 A) (x<=y)&&(y<=z) B)(x<=y)AND(y<=z)

C) x<=y<=z D)(x<=y)&(y<=z)

29、设有以下语句:int x=10; x+=3+x%(-3); 则x的值是(【29】)。【29】 A) 14 B) 15 C) 11 D) 12

30、sizeof(double)是(【30】)。

【30】 A) 一种函数调用 B) 一个双精度表达式

C) 一个整型表达式 D) 一个不合法的表达式

31、设x为int型变量,则执行语句x=10; x+=x-=x-x; 后, x的值为(【31】)。

【31】 A) 10 B) 20 C) 40 D) 30

32、设x、y、z、s均为int型变量,且初值均为1,则执行语句s=++x||++y&&++z;后,s的值为(【32】)。

【32】 A) 不定值 B) 2 C) 1 D) 0

33、设x和y均为int型变量, 则执行以下语句:

x+=y; y=x-y; x-=y; 的功能是(【33】)。

【33】 A) 把x和y从大到小排列 B) 把x和y从小到大排列

C) 无确定结果 D) 交换x和y的值

34、putchar()函数可以向终端输出一个(【34】)。

【34】 A) 整型变量表达式值 B) 实型变量值

C) 字符串 D) 字符或字符型变量值

35、若有代数式(3ae)/(bc), 则下列C语言表达式中,错误的是(【35】)。

【35】 A) a/b/c*e*3 B) 3*a*e/b/c C) 3*a*e/b*c D) a*e/c/b*3

36、若给定条件表达式(S) (a++) : (a--),则与表达式S等价的是(【36】)。

【36】 A) 和(S==0)等价 B) 和(S==1)等价

C) 和(S!=0)等价 D) 和(S!=1)等价

37、以下四条语句中,有语法错误的是(【37】)。

【37】 A) if(a>b) m=a; B) if(a

C) if((a=b)>=0) m=a; D) if((a=b;)>=0) m=a;

38、下列各程序段中,不能实现1+2+3+...+10求和的是(【38】)。【38】 A) int i=0,s=0;

while(i<=10) {s+=i,i++;}

B) int i,s;

for(s=0,i=1;i<11;i++) s+=i;

C) int i=0,s=0;

do {s+=i;,++i;}

while(i<=10);

D) int i,s;

for(s=0,i=1;i<=10;)

s+=i;

39、下列一维数组说明中,不正确的是(【39】)。

【39】 A) float a[5+6]; B) int n=10, a[n];

C) #define LONG 10 D) float a[10], b[9] ; int a[LONG+5] ;

40、下列一维数组初始化语句中,正确的是(【40】)。

【40】 A) int a[5]={,2,,3,5}; B) int a[5]={ };

C) int a[5]={5*2}; D) int a[]=(0,2,0,3,7);

三、填空题(每空2分,共30分)

41、定义 int a=12, b=12;后,语句 printf("%d,%d\n",--a,++b);

的输出结果是(【41】)。

42、已知 int x=43, y=0; char ch=‘A’; 则表达式(x>=y&&ch<‘B’&&!y)的值是(【42】)。

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

int a=010, b=0x10, c=10;

printf("%d,%d,%d\n", a, b, c); 则输出结果是(【43】)。

44、设 int x=0,y=-1;则执行下列程序段的输出结果为(【44】)。

if(x!=0)

if(x>0) y=1;

else y=0;

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

45、已知字母‘A’的十进制ASCII代码值为65,下面程序段的输出是(【45】)。

char ch1, ch2;

ch1=‘A’+‘5’-‘3’;

ch2=‘A’+‘6’-‘3’;

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

46、下面程序段的输出是(【46】)。

unsigned int a=32768;

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

47、若定义int d, c=6;则执行下面的语句后,d的值为(【47】)。 switch(c)

{ case 0:d=0;break;

case 1:

case 2:d=1;break;

case 3:

case 4:d=2;break;

default:d=3;

}

48、运行下面程序段的输出结果是(【48】)。

int a=4,b=5,t;

if (a>b);

t=a, a=b, b=t;

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

49、若执行下面程序时,从键盘输入"3,4",则输出是(【49】)。 main()

{ int a,b,s;

scanf("%d,%d",&a,&b);

s=a;

if (a

s=s*s;

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

50、运行下面程序段的输出结果是(【50】)。 int x=23;

do

{ printf("%2d",x--);}

while(!x);

51、运行下列程序段的输出结果是(【51】)。 c='\0';

while(c) printf("%d",++c);

52、下列程序段执行后,s的值为(【52】)。

int k,s=0;

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

s=s+k;

53、运行下面程序段的输出结果是(【53】)。

int i;

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

printf("%d",i);

54、若i,j已定义为int 类型,则以下程序段中内循环体的总的执行次数是(【54】)。

for(i=5;i;i--)

for(j=0;j<4;j++) { ...... }

55、以下for循环执行时,循环次数为(【55】)。

for(x=0,y=0;(y!=123)&&(x<4);x++);

四、阅读程序题(每题2分,共10分)

56、运行下列程序段的输出结果是(【56】)。 m='a';

do

{ printf("%c",m);}

while(!m);

57、运行下面程序段的输出结果是(【57】)。 int n,a,s=0,p=1,i;

n=2;a=2;

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

{p=p*a;s+=p;}

printf("\ns(%d,%d)=%d",a,i,s);

58、运行下面程序段的输出结果是(【58】)。 int n=10;

while(n>7)

{n--;printf("%d",n);}

59、阅读以下程序,请给出程序执行的结果(【59】) main()

{ int n,s=0,t=1;

for(n=1;n<=5;n++)

{ t*=n;

s+=t;

}

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

}

60、阅读以下程序,请给出程序执行的结果(【60】)

#define N 10

main( )

{ int i,j,m[N];

for(i=0;i

m[i]=0;

for(i=0;i

for(j=0;j

m[j]=m[i]+1;

printf(“%d\n”,m[N-1]);}

A卷答题纸

一、单项选择题(1空1分,共20分)

【1】【2】【3】【4】【5】【6】【7】【8】【9】【10】【11】【12】【13】【14】【15】【16】【17】【18】【19】【20】

二、单项选择题(每空2分,共40分)

相关文档