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

2018年北京信息科技大学计算机院814数据结构和C语言程序设计[专硕]之C程序设计考研强化五套模拟题

  摘要

一、选择题

1. 以下不是合法C 语言转义字符的是( )。 A. B. C. D.

【答案】A

【解析】C 语言中,

2. 设有两行定义语句:

intscanf ;

floatcase ; 表示响铃,表示退格,表示回车不换行,故答案为A 选项。

则以下叙述正确的是( )。

A. 两行定义语句都不合法

B. 两行定义语句都合法

C. 第1行语句不合法

D. 第2行语句不合法

【答案】D

【解析】预定义标识符是系统已经有过定义的标识符,用户可以重新定义,可以作为变量名。scanf 为库函数名,属于预定义标识符,可以被用户重定义,第一行语句合法。C 语言关键字是被保留的,不能用作其他用途的一些标识符,它们在程序中都代表着固定的含义,用户不可重新定义。case 是选择结构switch 语句中的关键字,不可被用户重定义,第二行语句不合法。

3. 以下程序中给数组所有元素输入数据,请从选项中选择正确的答案填入下划线处。

A.

B.

C.

D.

【答案】A

【解析】A 选项a 为数组首地址,i++先取i 值再加1,scanf 读入的数据依次存放在数组中,A 选项正确。B 选项,进入死循环,i-直为0, 一直对a[i+l]读入数据,B 选项错误。C 选项,控制变量i 没有依次加1,无法结束循环,也无法对整个数组赋值,输入的数全是a[0], C 选项错误。D 选项数组元素引用错误,数组元素引用为

4. 有以下程序:

程序运行的结果是( )。

A.40

B.16

C.8

D.4

【答案】C

【解析】左移一位相当于原数乘以2, 右移一位相当于除以2。类型的范围。

5. 有以下程序:

程序运行后的输出结果是( )。

A.0

B.1

C.4

D.8

【答案】C

【解析】对局部静态变量在编译时赋初值,以后每次调用函数时一直保持不变,只是保留上

不是( ),D 选项错误。故选A 。 结果为没有超过char

次函数调用结束 时的值。在主函数中调用了两次fim0函数,所以x 的值变为

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

A. 用typedef 为类型说明一个新名,通常可以增加程序的可读性

B.typedef 只是将已存在的类型用一个新的名字来代表

C. 用typedef 可以为各种类型说明一个新名,但不能用来为变量说明一个新名

D. 用typedef 可以增加新类型

【答案】D

【解析】用typede 只是将已存在的类型用一个新的名字来代表,并没有增加新类型。

7. 有以下程序:

运行时,若输入123450<回车>,则输出结果是( )。

A.6566456

B.66656

C.66666

D.6666656

【答案】A

【解析】输入1:执行easel ,输出6,没有遇到break ,继续执行case2,输出5,遇到break ,跳出;

输入2:执行case2,输出6,遇到break ,跳出;

输入3:执行case3,输出6,没有遇到break ,执行default ,输出4;

输入4:执行default ,输出5;

输入5:执行default ,输出6。

最后输出结果是6566456。

8. 有以下函数: