C语言程序设计试卷(含答案) 下载本文

内容发布更新时间 : 2024/11/8 17:40:53星期一 下面是文章的全部内容请认真阅读。

说明:请将单项选择题(1~50空)的正确答案涂写考试答题卡,将填空(51~75空)等文字题按【 】中的序号写入下面文字答题卡,否则不得分。 二、阅读程序题文字答题卡:(每空2分,共24分)

1题【51】 3题【54】 6题【57】 9题【60】 1题【52】 4题【55】 7题【58】 9题【61】 2题【53】 5题【56】 8题【59】 10题【62】 三、完善程序填空题文字答题卡:(每空2分,共26分)

1题 【63】 2题 【64】 【65】 【66】 3题 【67】 【68】 【69】 4题 【70】 【71】 【72】 5题 【73】 【74】 【75】

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

请将正确答案按【 】中的序号写入答题卡,否则不得分。

1.在C语言中,一条语句以 【】 字符作为结束符。

A) , B) ; C) . D) 无符号 2.以下4组标识符中,能作为变量名使用的是 【】 。

A) age,struct,s1 B) 2A, b_3,main C) ELSE,a[2],m123 D) _abc,INT,abcd

3.判断char型变量ch是否为数字字符的正确表达式为 【】 。

A) 0<=ch<=9 B) '0'<=ch<='9' C) (0<=ch)&&(ch<=9) D) ('0'<=ch)&&(ch<='9')

4.已知小写字母a的ASCII码值是97,大写字母A的ASCII码值是65,下列语句中不能输出大写字母B的是 【】 。

A) putchar('A'+1); B) putchar('b'-32); C) putchar(98-32); D) putchar(B); 5.空字符串的长度是 【】 。

A) 0 B) 1 C)2 D)3 6.整型变量a定义后赋初值的结果是 【】 。 int a=2.8*6;

A) 12 B) 16 C) 17 7.若有以下说明语句,则该语句 【】 。 char a='\\077';

A) 使a的值包含1个字符 B) 使a 的值包含4个字符 C) 使a的值包含3个字符 D) 说明不合法 8.下面的程序结果为: 【】 。 main() {

int x=023; printf(\,--x); }

A)17 B) 18 C)23 9.源程序执行后,屏幕上显示 【】 。 main() { int a; float b; a=4; b=9.5;

printf(\,b=%4.2f\\n\,a,b); }

A)a=%d,b=%f\\n B) a=%d,b=%f C)a=4,b=9.50 D) a=4,b=9.5 10.设 int x=10; x+=x%=(-6)+4; 则x= 【】 。

A) 0 B) 16 C) 18 11.C语言的下列运算符中,运算对象必须是整型数据的是 【】 。D) 18 D)24 D) 10

A) % B) / C) && D) * 12..若有代数式(3ae)/(bc),则下面不正确的C语言表达式是 【】 。

A) a/b/c*e*3 B) 3*a*e/b/c C) 3*a*e/b*c D) a*e/c/b*3 13.下面程序的输出结果是 【】 。 main() {

int a=-1,b=4,k;

k=(a++<=0)&&(!(b--<=0)); printf(\,%d,%d\\n\,k,a,b); }

A)1,1,2 B)1,0,3 C)14.下面哪个表达式的值为4 【】 。

A)11/3 B) 11.0/3 C)(float)11/3 D)(int)(11.0/3+0.5) 15.下面程序的输出结果是 【】 。 main() { int x=2,y=-1,z=2; if(x

A) 3 B) 1 C)16.下列程序的运行结果是 【】 。 main() { int x=0,y=1,z=0; if(x=z=y) x=3; printf(“%d,%d\\n”,x,z); }

A) 3,0 B) 0,0 C)17.下面的程序 main() {

int x=100,a=10,b=20,ok1=5,ok2=0; if(a

0,1,2 2 0,1 D) 0,0,3 D) 0 D) 3,1

else if(ok2) x=10; x=-1; printf(\,x); }

的输出是 【】 。 A) -1 B) 0 C) 1 D) 不确定的值 18.执行下面程序后的输出结果是 【】 。 int x=1,y=1,z=1; x+=y+=z;

printf(“%d\\n”,x

A) 3 B) 2 C)1 D) 4 19.有如下程序段,则输出结果是 【】 。 int a=10; switch(a)

{ case 9: a+=1; case 10: a+=1; case 11: a+=1; case 12: a+=1; }

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

A)11 B) 12 C) 13 D) 10 20.下面的程序 main() { int i; for(i=0;i<10;i++); printf(\,i); }

的输出结果是 【】 。

A) 0 B) 123456789 C) 0123456789 D) 10 21. do语句的循环次数为 【】 。 int a=10; do { a--;} while (a!=0)

A) 10 B) 9 C) 11 D) 12 22.设有类型说明为:int i=1; 则执行语句:“while (i++<5); ”后,变量i的值是 A) 7 B) 6 C) 5 D) 1 23.对以下程序段的叙述正确的是 【】 。

int k=0;

while(k=0) k=k-1;

】 。

【A) while循环之行10次 B) 无限循环 C) 循环体一次也不执行 D) 循环体被执行一次 24.以下语句段中, 【】 不是死循环。 A)int i=100; while(1) {i=i0; i++;

if(i>100)break;} B)for(;;); C)int k=32764; do

{k++;

k++;}while(k>0) D)int s=32764; while((s++%2)||(s%2)) s++;

25.使用如下语句定义一个char型二维数组str,用来存放字符串\、\、\,

char str[M][N];

则M和N最合理取值应该是 【】 。 A) 3和7 B) 2和7 C) 2和6 D) 3和6 26.设己定义 int a[5 ]={0,1,2} ;

则a[4]数组元素的值为 【】 。

A) 不确定值 B) 定义错误 C) 4 D) 0 27.运行下面程序段的输出结果是 【】 。 static int a[7]={1,3,5} ; printf(\

A) 0 B) 5 C) 3 D) 不确定数

28.设有说明 char a[ ]= \ 则以下不能正确输出的语句是 【】 。

A) printf(\ B) printf(\

C) puts( a ); D) puts (\

29.当执行下面的程序时,如果输入ABC,则输出结果是 【】 。 #include \#include \main()

{ char ss[10]=\

gets(ss); strcat(ss, \}

A) ABC6789 B) ABC67 C) 12345ABC6 D) ABC456789 30.以下程序的输出结果是 【】 。 main()