基本信息
文件名称:c考试题库及答案.doc
文件大小:28.02 KB
总页数:9 页
更新时间:2025-07-02
总字数:约4.63千字
文档摘要

c考试题库及答案

一、单项选择题(每题2分,共10题)

1.以下哪个是C语言合法的标识符?()

A.@abcB.123abcC.abc_1D.int

答案:C

解析:标识符只能由字母、数字和下划线组成,且不能以数字开头,A选项包含@非法,B以数字开头非法,D是关键字非法,C符合要求。

2.若有定义inta=5;则执行a+=a-=aa;后,a的值是()

A.0B.-40C.40D.-15

答案:B

解析:先算aa=25,再算a-=25即a=5-25=-20,最后算a+=-20即a=-20+(-20)=-40。

3.以下关于C语言数据类型的说法,正确的是()

A.char类型只能存储单个字符B.float类型比double类型精度高

C.int类型不能表示负数D.short类型和long类型占用字节数一样

答案:A

解析:char用于存储单个字符,A正确;double精度比float高,B错误;int能表示负数,C错误;short占2字节,long占4字节(32位系统)或8字节(64位系统),D错误。

4.以下语句中能正确输出字符A的是()

A.printf(%c,65);B.printf(%d,A);C.printf(%f,A);D.printf(%s,A);

答案:A

解析:65是字符A的ASCII码值,%c用于输出字符,所以A能正确输出字符A;B用%d输出字符会输出其ASCII码值;C用%f不能输出字符;D用%s输出的是字符串。

5.以下循环结构中,循环体一定会执行一次的是()

A.for循环B.while循环C.do-while循环D.以上都不对

答案:C

解析:do-while循环是先执行一次循环体,再判断条件,所以循环体一定会执行一次;for和while可能一次都不执行。

6.若有定义inta[3][4];则a[1][2]表示的是数组中的第几个元素?()

A.6B.7C.8D.9

答案:B

解析:二维数组a[3][4],按行存储,a[1][2]是第二行第三列元素,前面有14+2=6个元素,所以是第7个。

7.以下函数返回值类型是int的是()

A.voidfun()B.floatfun()C.intfun()D.以上都不对

答案:C

解析:函数定义时返回值类型为int,返回值类型就是int;A是无返回值函数,返回void;B返回值类型是float。

8.若有定义intp;则p是()

A.整型变量B.指向整型数据的指针变量C.整型常量D.以上都不对

答案:B

解析:intp定义了一个指向整型数据的指针变量,p中存储的是整型数据的地址。

9.以下运算符优先级最高的是()

A.+B.C.()D.=

答案:C

解析:括号运算符优先级最高,改变运算顺序;乘法和加法优先级低于括号,赋值运算符优先级最低。

10.以下预处理命令正确的是()

A.definea=5B.includea.hC.definePI3.14D.ifdefa

答案:C

解析:define定义常量形式为define标识符常量值,C正确;A多了=;include后文件名要用或括起来,B错误;ifdef后面需跟标识符,D错误。

二、多项选择题(每题2分,共10题)

1.以下哪些是C语言的关键字?()

A.mainB.ifC.whileD.switch

答案:BCD

解析:if、while、switch都是C语言关键字,用于控制程序流程等;main是函数名,不是关键字。

2.以下能正确定义并初始化整型变量的有()

A.inta=10;B.inta,b=10;C.inta=b=10;D.inta;a=10;

答案:ABD

解析:A直接定义并初始化a为10;B定义a和b,同时初始化b为10;D先定义a,再赋值10;C不能连续赋值,应分开定义初始化变量。

3.以下关于scanf函数的说法,正确的是()

A.可以从键盘读取数据B.格式控制字符串可以包含