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

2017年东北师范大学C++程序设计(同等学力加试)复试仿真模拟三套题

  摘要

一、选择题

1. 下列叙述中正确的是( )。

A. 每个C 程序文件中都必须要有一个main 函数

B. 在C 程序中main 函数的位置是固定的

C.C 程序中所有函数之间都可以相互调用

D. 在C 程序的函数中不能定义另一个函数

【答案】D

【解析】D 项正确,C 语言语法规定,在函数中不能定义其他函数。A 项错误,C 程序必须要有一个main 函数,但并不是每个文件中都要有;B 项错误,main 函数的位置没有特殊要求;C 项错误,从其他函数中不能调用main 函数。

2. 有以下程序:

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

A.10

B.11

C.20

D.21

【答案】D

【解析】题中定义了一个包含两个元素的结构体数组,其中data[0].a=10,data[0].b=100,data[l].a=20,data[l].b=200。指针p 指向结构体数组的第2个元素,那么p.a 的值为20, p.b 的值为200, 所以输出结果为21。

3. 以下关于编译预处理的叙述中错误的是( )。

A. 预处理命令行必须位于源程序的开始

B. 源程序中凡是以#开始的控制行都是预处理命令行

C. 一行上只能有一条有效的预处理命令

D. 预处理命令是在程序正式编译之前被处理的

【答案】A

【解析】通常,预处理命令位于源文件的开头,也可以写在函数与函数之间。

4. 若在程序中变量均已定义成int 类型,且已赋大于1的值,贝!J 下列选项中能正确表示代数

式的表达式是( )。

A.1.0/a/b/c

B.1/(a*b*c)

C.1.0/a*b*c

D.1/a/b/(double )c

【答案】A

【解析】abc 均大于1, 所以表达式1/abc小于1,需要用浮点类型表示。若要计算表达式值,需要使其自动转化成浮点类型,A 项正确。B 项变量与常量均为整型,不会自动转换为浮点类型,B 项错误。C 项表示表达式be/a,错误。D 项,算数运算法结合性自左向右,先计算1/a,结果为0, 之后的计算无论是否转换数据类型结果均为0, D 项错误。

5. 若变量已正确定义,有以下程序段:

其输出结果是。

A. 程序段有语法

B.3, 5,3

C.3, 5, 5

D.3, 5, 7

【答案】B

【解析】当a>b时,令a=b, a=3,b=5,因此a>b条件不成立,所以不执行a=b。然后c=a=3。此时“c!=a”条件不成立,不执行“c=b; ”语句。结果为a=3, b=5, C=3。

6. 有以下程序:

程序运行的结果是( )。

A.0

B.10

C.20

D. 出错

【答案】C

【解析】fun 函数的功能是申请一个指针p ,把p 指向的存储空间赋值为n ,并返回p 指向的空间的值,即为n 。

7. 有以下程序:

的返回值为10,所以后a 的值为10,

程序运行的结果是( )。

【答案】A

【解析】在do while循环中,总是先执行后判断,所以循环体至少会被执行一次。在循环中,如果满足

循环。

8. 有以下程序

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

A.0

B.z

C. 元素的地址

D. 字符y 的地址

【答案】B

那么输出i 的值,退出循环,否则如果则跳出