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

c语言考试题及答案

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

1.以下关于C语言标识符的描述,正确的是()

A.标识符只能由字母、数字和下划线组成

B.标识符可以以数字开头

C.关键字不能作为标识符

D.标识符中不能有下划线

答案:C

解析:标识符由字母、数字和下划线组成,且不能以数字开头,关键字不能作为标识符,标识符中可以有下划线,所以A、B、D错误,C正确。

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

A.-40

B.0

C.40

D.5

答案:A

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

3.以下能正确定义一维数组的选项是()

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

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

C.chara=ABCDE;

D.inta[5]=0123;

答案:B

解析:A选项数组初始化时元素个数不能超过定义的大小;C选项不能用一个字符给字符数组赋值一个字符串;D选项赋值方式错误,所以正确的是B。

4.以下程序段的输出结果是()

```c

intx=10,y=3;

printf(%d\n,x/y);

```

A.3.333333

B.3

C.3.0

D.不确定

答案:B

解析:两个整数相除结果取整,10/3=3,所以输出3。

5.以下关于函数的说法,错误的是()

A.函数可以没有参数

B.函数可以没有返回值

C.函数必须有返回值

D.函数可以嵌套调用

答案:C

解析:函数可以没有参数,如voidfunc();也可以没有返回值,用void修饰返回类型,函数可以嵌套调用,所以A、B、D正确,C错误。

6.若有定义:chars[]=hello;则sizeof(s)的值是()

A.5

B.6

C.7

D.不确定

答案:B

解析:字符数组s中除了存放hello这5个字符外,还会自动在末尾添加\0,所以sizeof(s)的值是6。

7.以下运算符中,优先级最高的是()

A.

B.||

C.==

D.+

答案:D

解析:算术运算符+的优先级高于关系运算符==和逻辑运算符、||。

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

A.整型变量

B.指向整型变量的指针变量

C.指向指针的指针变量

D.不确定

答案:B

解析:intp定义了一个指向整型变量的指针变量。

9.以下循环语句中,循环体执行次数为0的是()

A.for(inti=0;i10;i++)

B.while(1)

C.do{}while(0);

D.for(inti=10;i0;i--)

答案:C

解析:do-while循环先执行一次循环体,这里条件为0,所以循环体执行0次。

10.以下关于结构体的说法,正确的是()

A.结构体成员的数据类型必须相同

B.结构体变量不能作为函数参数

C.结构体可以嵌套定义

D.结构体不能包含指针成员

答案:C

解析:结构体成员数据类型可以不同,结构体变量能作为函数参数,结构体可以嵌套定义,结构体也可以包含指针成员,所以A、B、D错误,C正确。

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

1.以下属于C语言基本数据类型的有()

A.int

B.float

C.char

D.double

答案:ABCD

解析:C语言基本数据类型包括整型(int)、浮点型(float、double)、字符型(char)。

2.以下哪些是合法的C语言常量()

A.123

B.a

C.abc

D.0x12

答案:ABD

解析:a是字符常量,123是整型常量,0x12是十六进制整型常量,abc是字符串常量,双引号括起来的是字符串,单引号括起来的单个字符才是字符常量,所以C不合法,A、B、D合法。

3.以下关于if语句的说法,正确的有()

A.if语句可以没有else子句

B.if语句中的条件表达式必须用括号括起来

C.if语句可以嵌套使用

D.if语句只能判断一个条件

答案:AC

解析:if语句可以没有else子句;条件表达式不一定非要用括号括起来;if语句可以嵌套;if语句可以通过逻辑运算符连接多个条件来判断,所以B、D错误,A、C正确。

4.以下能用