09级C语言期中试卷

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

桂林电子科技大学信息科技学院09级C程序设计期中测试卷

一、选择题(20题,共40分)

1.一个C程序总是从开始执行。

A. 程序的第一个语句

B. 主函数

C. 子程序

D. 主程序

2.下列标识符中,合法的用户标识符为。

A. P#Ad

B. 12a

C. char

D. _int

3.下面4组常量,合法的一组C语言常量是。

A. 0

B. 10

C. 0.01

D. 0.1

0x10 10L "\"" 3E+0

2E+9 E1 "\' ""\""

'a'"a"'t''tt'

''''\0''\t' 012

4.执行下列程序片段时输出结果是。

unsigned int a=65535;

printf(“%d”,a);

A)65535 B)-1 C)-32767 D)1

5.若有定义(说明)int a[3][4]; 则对数组a的元素的引用非法的是。

A. a[2][2*1]

B. a[1][3]

C. a[4-2][0]

D. a[0][4]

6.以下不能对二维数组a进行正确初始化的语句是。

A. int a[2][3] ={0};

B. int a[][3] ={{1,2},{0}};

C. int a[2][3] ={{1,2},{3,4},{5,6}};

D. int a[][3] ={1,2,3,4,5,6};

7.已有如下定义和输入语句,若要求a1,a2,c1,c2的值分别为10,20,A和B,当从第一列开始输入数据时,正确的输入方式是。

int a1,a2; char c1,c2;

scanf(“%d%d”,&a1,&a2);

scanf(“%c%c”,&c1,&c2);

A)1020AB↙B)10 20↙

AB↙

C)10 20 AB↙D)10 20AB↙

8.下列表达式中,不满足“当x的值为偶数时值为真,为奇数时值为假”的要求。

A)x%2==0 B)!x%2!=0 C)(x/2*2-x)==0 D)!(x%2)

9.对下述程序,是正确的判断。

main ( )

{ int x,y;

scanf(“%d,%d”,&x,&y);

if (x>y)

x=y;y=x;

else

x++;y++;

printf(“%d,%d”,x,y);

}

A)有语法错误,不能通过编译B)若输入3和4,则输出4和5 C)若输入4和3,则输出3和4 D)若输入4和3,则输出4和5 10.若a、b为int型变量,则执行下列语句后的b值是。

a=15;b=15;

do

{ b-=a;

a++;

}while(b--<0);

A. 0

B. -15

C. -16

D. -1

11.若a,b均为int型常量,且a=100,则关于循环语句

for(b=100;a!=b;++a,++b) printf("------"); 的正确说法是。

A.循环体只执行一次

B.死循环

C.循环体一次也不执行

D.输出--------

12.下述程序的输出结果是。

main ( )

{ int x=-1,y=4,k;

k=x++<=0 && !(y--<=0);

printf(“%d,%d,%d”,k,x,y);

}

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

13.运行下面程序后,其输出结果是。

main()

{ int i=1;

while(i<19)

if(i++%5!=3) continue;

else printf("%d",i);

printf("\n",i);

}

A. 257911131517

B. 369121518

C. 491419

D. 38131719 14.运行下面的程序,其正确输出是。

#include

main()

{ int i;

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

{ if(i%2){ printf("#");

continue;

}

printf("*");

}

printf("\n");

}

A. ***###

B. ###***

C. #*#*#*

D. *#*#*#

15、下列程序运行后的输出结果是。

#include

#define MAX 10

void main()

{ int i,sum,a[]={1,2,3,4,5,6,7,8,9,10};

sum=1;

for(i=0;i

sum-=a[i];

printf(“sum=%d\n”,sum);

}

A. sum=55

B. sum= -54

C. sum= -55

D. sum=54

16、下面的程序运行后,其输出结果是____。

#include

main()

{ int y=18,i=0,j,a[8]

do

{ a[i]=y%2;

i++; y=y/2;

}while(y>=1);

for(j=i-1;j>0;j--)

printf("%d",a[j]);

}

A.1000

B.1001

C.1010

D.1100 17.下列程序运行后的结果是。

#include

main()

{ int x=1,y=0,a=0,b=0;

switch(x)

{ case 1:

switch(y)

{ case 0:a++;break;

case 1:b++;break;

}

case 2:a++;b++;

break;

}

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

}

A. a=2,b=1

B. a=1,b=1

C. a=1,b=0

D. a=2,b=2

18.下面程序的输出结果是。

main ( )

{ int x=9;

for (; x>0; x--) {

if (x%3==0) {

printf(“%d”,--x);

相关文档
最新文档