当前位置:问答库>考研试题

2016年浙江理工大学信息学院C语言程序设计考研复试题库

  摘要

一、选择题

1. 以下叙述错误的是( )。

A. 未经赋值的全局变量值不确定 B. 未经赋值的auto 变量值不确定 C. 未经赋值的register 变量值不确定 D. 未经赋值的静态局部变量值为0 答:A

【解析】C 语言中,系统将未经赋初值的全局变量默认为0, 答案为A 选项。

2. 若有定义语句则表达式值的类型是( )。

A.char B.int C.double D.float 答:c

【解析】在多目运算符相关联的运算数中,如果类型不一致,系统将自动进行类型转换,使两边的类型达到一直后,再进行运算,转换的规则是由“低到高”。double 型,即选择答案C 。

3. 设有以下定义:

则以下叙述正确的是( )。 A. 数组s1的长度小于s2的长度 B. 数组s1和s2的长度相同 C. 数组s1的长度大于s2的长度 D. 数组s1和s2完全等价 答:C

【解析】为字符数组

赋值字符串“0123”时,字符串中字符依次放人数组中后,在最后一个

数组s1长度为5。数组s2只需要4个单元即可放下所有初始

字符后要添 加一个结束字符

是字符型,a 是整型,b

是double 型。字符型数据占1个字节,整型占2个字节,double 型占8个字节,故三者相加后为

化值,故数组长度为4。所以数组s1的长度大于S2的长度,C 项正确。两个数组等价是指两个数组长度和类型以及对应每个元素值均相 同,所以s1和82不是完全等价,D 项错误。

4. 以下不合法的字符常量是( )。

A. B. C. D. 答:A

【解析】在C 语言中,含义,仅仅代的转义,

表示转义符,可以对特殊符号进行转义,此时特殊符号不再有其他

表示换行,

表示Tab 键。A 项,是指十六进制数cc 。

表示两位的八进

表普通的字符,\后面的字符取值范围应该在Ascn 码表范围。例如. 表示对双引号

表示对转义符的转义,

制数,8不是合法的八进制数字。B 项,表示双引号这个特殊字符;C 项,表示转义符这个特殊字符;D 项,

5. 有以下程序

程序运行后的输出结果是( )。 A.36 B.24 C.32 D.28 答:D

【解析】函数f 可以重写成: 1 234 5678 9

1011

13

表示两位十六进制数,

12

14 15 16 17

f (0)时,进入第9行else 语句,第11行a 等于6; 返回12。

f (l )时,进入第4行if 语句,第6行

第14行第14行

第15行静态a 自增,此时a 是调用完f (0)后

自增的静态a ; 第15行静态a 自增,a 等于7; 返回12。 所以,其中4是全局变量a 的值。

6. 以下关于宏的叙述错误的是( )。

A. 宏替换不具有计算功能 B. 宏是一种预处理指令 C. 宏名必须用大写字母构成 D. 宏替换不占用运行时间 答:C

【解析】宏名习惯采用大写字母,以便与一般变量区别,但是并没有规定一定要用大写字母,因此,答案为C 选项。

7. 以下是if 语句的基本形式:

if (表达式)语句

其中“表达式”( )。 A. 必须是逻辑表达式 B. 必须是关系表达式

C. 必须是逻辑表达式或关系表达式 D. 可以是任意合法的表达式 答:D

【解析】表达式一般是关系表达式或逻辑表达式,用于描述选择结构的条件,但也可以是其他类型表达式,只要其合法,在其值非零时都视为真,所以其他表达式也可以作为if 语句的判断条件。

8. 有以下程序

程序运行后的输出结果是( )。 A.-12