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

2018年北方民族大学软件工程832C语言程序设计与数据结构之C程序设计考研强化五套模拟题

  摘要

一、选择题

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

A. 可以用typedef 说明的新类型名来定义变量

B.typedef 说明的新类型名必须使用大写字母,否则会出编译错误

C. 用typedef 可以为基本数据类型说明一个新名称

D. 用typedef 说明新类型的作用是用一个新的标识符来代表已存在的类型名

【答案】B

【解析】typedef 说明的新类型名习惯上用大写字母,但不是必须用大写。

2 若有定义语句 ,.则错误引用x 数组元素的是( )。

A. 1 B. C. D.

【答案】B

【解析】对一维数组元素可以采用多种方式。直接引用,数组名[下标],数组的大小为n 时,下标的取值范围为0〜(n_l)。B 项错误,数组x 的下标为0〜4,

C 项,通过指针访问D 项,通过数组名访问

3. 有以下定义语句,编译时会出现编译错误的是( )。

【答案】C

【解析】本题中a 为一个字符型变量,只能为其赋值一个字符常量。C 项中

量,所以会编译错误。BD 两项为转义字符,编译可以通过。

4. 有以下程序段:

第 2 页,共 37 页 溢出。A 项,

通过指针访问不是字符常

程序的输出结果是( )。

【答案】A

【解析】因为的值不变。

5. 有以下程序:

程序的运行结果是( )。

A.NelNN

B.ela2e3

C.NelNe2N

D.NalNNNN

【答案】C

【解析】k=0时,选择default 分支,输出N ; k=l时,

到break 语句,

故继续执行

终输出

6. 有以下程序:

程序的运行结果是( )。

A.1

B.10

C.0

D.4

第 3 页,共 37 页 所以if 语句判断条件不成立,于是执行得到a 和b

选择ease1分支,因为没有遇即输出e 和1。依次往下执行,最分支,输出(:和_

【答案】A

【解析】程序的执行过程为:a=l时,条件不成立,执行语句b+=a; 得到b=l; a=2时,a%2=0条件成立,执行语句break ; 跳出循环。输出b=l, 故A 项正确。

7. 有以下程序

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

A.1, 2, 4

B.1, 3, 6

C.3, 10, 14

D.3, 6, 10

【答案】C

【解析】case 分支后面如果没有break , 那么就会顺序执行下面的case , 直到遇到break 跳出或者到switch 语句块结尾。所以第一次循环后s 的值为3, 打印输出。第二次S 的值为即

为10, 打印输出。第三次没有匹配成功直接执行default 语句,s=s+4, 所以s 的值为14, 打印输出。

8. 设有定义:则以下语句错误的是( )。

A.p=a;

B.p=b;

C.p=c; D.

【答案】A

【解析】p 为指针变量,存放变量的地址。对指针变量赋值,值必须是地址值。a 为整型变量不是地址值, 不能赋值给p , A项错误。数组名为数组首地址,b 为地址可以赋值给p , B项正确。c 为指针变量,初始化为 NULL , 与p 均为整型指针,可以将其赋值给p , C项正确。&为取地址运算符,为数组元素b[0]的地址,可以赋值给p ,D 项正确。

9. 若有定义语句则表达式的值为( )。

A.-20

B.-10

C.0

D.10

【答案】B

【解析】赋值表达式,首先计算右边表达式,然后在进行赋值。先做

结果为

-10, 赋值给X 。

10.关于C 语言中数的表示,以下叙述中正确的是( )。

A. 只有整型数在允许范围内能精确无误地表示,实型数会有误差

第 4 页,共 37 页 结果为20, 再做