期末c语言考试题word.docxVIP

  • 0
  • 0
  • 约6.65千字
  • 约 13页
  • 2026-01-30 发布于山东
  • 举报

期末c语言考试题

第一部分单选题(50题)

1、若charstr=abcde;则(str+4)的值是?()

A.d

B.e

C.\0

D.无定义

【答案】:答案解析:str+4指向第5个字符,值为e,故选B。

2、以下哪个转义字符表示制表符?()

A.\n

B.\t

C.\b

D.\r

【答案】:答案解析:\t是制表符(Tab),\n换行,\b退格,\r回车,故选B。

3、以下函数参数为指针的是?()

A.voidfun(int*a){}

B.voidfun(inta){}

C.voidfun(inta[]){}

D.A和C

【答案】:答案解析:A是指针参数,C数组名参数本质是指针,B是值参数,故选D。

4、若charstr=Clanguage;则(str+2)的值是?()

A.C

B.

C.l

D.a

【答案】:答案解析:str+2指向第三个字符,值为l,故选C。

5、以下if语句中,逻辑运算符使用正确的是?()

A.if(x3x7)

B.if(x3x7)

C.if(x3|||x7)

D.if(x3||x7)

【答案】:答案解析:逻辑与用,逻辑或用||,B是按位与,C多写||,D逻辑错误(x3或x7恒为真),故选A。

6、定义整型变量x、y并均赋值10的语句是?()

A.intx=y=10;

B.intx=10,y=10;

C.intx=10;y=10;

D.intx=10;inty=10;

【答案】:答案解析:同一行定义多个变量用逗号分隔,A不能连续赋值,C缺少int,D是两行定义,故选B。

7、以下数组定义中,长度为5的是?()

A.inta[5];

B.inta[]={1,2,3,4,5};

C.charstr[]=abcd;

D.以上都是

【答案】:答案解析:A长度5,B长度5,C字符串abcd含\0共5个字符,故选D。

8、do-while循环中,循环体至少执行几次?()

A.0次

B.1次

C.2次

D.不确定

【答案】:答案解析:do-while“先执行后判断”,无论条件是否满足,循环体至少执行一次,故选B。

9、若inti=0;执行do{printf(%d,i);i++;}while(i0);输出结果是?()

A.0

B.无输出

C.无限循环

D.01

【答案】:答案解析:do-while先执行一次(输出0,i=1),判断i0为假,循环结束,故选A。

10、若intx=1;执行switch(x){case1:printf(1);break;case1:printf(2);break;}会出现什么情况?()

A.输出1

B.输出2

C.编译错误

D.运行错误

【答案】:答案解析:case后常量不能重复,编译时会报错,故选C。

11、以下哪个函数用于读取字符?()

A.putchar()

B.gets()

C.getchar()

D.printf()

【答案】:答案解析:getchar()读取单个字符,puts()输出字符串,gets()读取字符串(已淘汰),故选C。

12、以下哪个数据类型的占用字节数最大?()

A.char

B.short

C.int

D.double

【答案】:答案解析:char(1字节)、short(2字节)、int(4字节)、double(8字节),故选D。

13、数组元素的下标从______开始?()

A.0

B.1

C.-1

D.任意

【答案】:答案解析:C语言数组下标从0开始,是固定规则,故选A。

14、以下switch语句语法错误的是?()

A.switch(x){case1:printf(1);break;case2:printf(2);break;}

B.switch(x){case1:printf(1);case2:printf(2);}

C.switch(x){case1:;break;case2:printf(2);}

D.switch(x){case1:printf(1);break;case1:printf(2);break;}

【答案】:答案解析:case后常量不能重复,D中case1重复,编译报错,故选D。

15、若inta[4]={1,2,3,4};则*(a+1)的值是?()

A.1

B.2

C.3

D.4

【答案】:答案解析:a是首地址,a+1是第二个元素地址,*(a+1)=a[1]=2,故选B。

16、若intx=2;执行switch(x){case1:printf(a);case2:printf(b);case3:printf(c);}输出结果是?()

A.b

B.bc

C.abc

D.无输出

【答案】:答案解析:x=2匹配c

文档评论(0)

1亿VIP精品文档

相关文档