清华c语言期末测试题及答案(考点梳理).docxVIP

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

清华c语言期末测试题及答案(考点梳理).docx

清华c语言期末测试题

第一部分单选题(50题)

1、若intx=10;则表达式x%3的结果是?()

A.1

B.2

C.3

D.0

【答案】:答案解析:%是取余运算符,10除以3商3余1,故选A。

2、以下哪个是合法的字符常量?()

A.a

B.ab

C.a

D.a

【答案】:答案解析:字符常量用单引号包裹单个字符,A是字符串,B是两个字符(错误),D是标识符,故选C。

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

A.\n

B.\t

C.\b

D.\r

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

4、以下循环中,循环次数为3次的是?()

A.for(i=1;i=3;i++)

B.while(i=3)

C.do{i++;}while(i3);

D.for(i=5;i0;i--)

【答案】:答案解析:A执行3次(1-3),B是无限循环,C(i初始0)执行3次,D执行5次,题目问“3次”,A明确正确,故选A。

5、以下哪个操作会导致野指针?()

A.指针未初始化

B.指针指向的内存被释放后未置空

C.指针越界访问

D.以上都是

【答案】:答案解析:野指针是指向无效地址的指针,A、B、C均会导致野指针,故选D。

6、以下关于数组越界的说法正确的是?()

A.编译时会报错

B.运行时一定会崩溃

C.可能导致程序错误

D.无影响

【答案】:答案解析:数组越界属于未定义行为,编译时不报错,运行时可能正常或崩溃,故选C。

7、以下数组定义错误的是?()

A.inta[0];

B.inta[5];

C.inta[]={1,2,3};

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

【答案】:答案解析:数组长度不能为0,编译报错,其余正确,故选A。

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

A.char

B.short

C.int

D.double

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

9、以下哪个是C语言的循环语句?()

A.if

B.for

C.else

D.switch

【答案】:答案解析:C语言循环语句包括for、while、do-while,if/else是选择语句,switch是多分支选择语句,故选B。

10、若inti=0;执行while(i5){if(i==2)break;printf(%d,i);i++;}输出结果是?()

A.01

B.012

C.01234

D.无限循环

【答案】:答案解析:i=2时执行break,终止循环,输出01,故选A。

11、以下switch语句中,default的执行时机是?()

A.所有case都不匹配时

B.第一个case不匹配时

C.最后一个case不匹配时

D.任何时候

【答案】:答案解析:default仅在所有case都不匹配时执行,故选A。

12、若inta=3,b=5;执行以下代码后输出结果是?()if(ab)printf(A);elseprintf(B);

A.A

B.B

C.AB

D.无输出

【答案】:答案解析:a=3b=5,条件为假,执行else分支,输出B,故选B。

13、若inta[5];则数组a的元素个数是?()

A.4

B.5

C.6

D.不确定

【答案】:答案解析:数组a[5]定义5个元素(下标0-4),故选B。

14、若inta=10,p=a;则p的值是?()

A.10

B.a

C.p

D.无定义

【答案】:答案解析:*p是解引用,-用于结构体指针访问成员,.用于结构体变量访问成员,故选B。

15、转义字符\的作用是?()

A.表示反斜杠

B.表示换行

C.表示空格

D.表示制表符

【答案】:答案解析:\用于表示字符反斜杠(\),避免与转义字符冲突,故选A。

16、以下if语句语法正确的是?()

A.if(x0)printf(yes);

B.ifx0printf(yes);

C.if(x0);printf(yes);

D.if(x0){printf(yes)}

【答案】:答案解析:if后条件需加括号,B缺少括号,C分号导致语句结束,D缺少分号,故选A。

17、以下数组初始化中,未赋值元素默认为0的是?()

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

B.charstr[5];

C.inta[5];

D.以上都是

【答案】:答案解析:全局数组未初始化默认为0,局部数组未初始化是随机值,A初始化部分元素,未赋值默认为0,故选A。

18、若inta[3][3]={{1},{2,3},{4,5,6}};则a[1][0]的值是?()

A.2

文档评论(0)

1亿VIP精品文档

相关文档