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

2016年深圳大学机电与控制工程学院FS27专业基础知识综合之C语言程序设计复试笔试最后押题五套卷

  摘要

一、选择题

1. 有以下程序:

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

A.1

B.0

C.2

D.4

答:A 【解析】右移运算符每次右移一位等价于除2, x=36, 执行后,逻辑与运算,先计算左表达式真假,若为假,不计算右表达式,整个逻辑表达式为假,若左表达式为真,再计算右表达式,之后做逻辑与运算;

为真,

整个逻辑表达式

2. 有以下程序:

程序的输出结果是( )。

A.22

B.18

C.20

D.16

答:D

【解析】语

第 2 页,共 33 页

,为真,A 的ASCII 码为65, a 的ASCII 码为97

, 为真,得b=l。 相当

于程序执行过程为

退出循环。

3. 有以下程序:

程序的运行结果是( )。

A.21,18

B.81,81

C.21,21

D.18,18

答:A

,替换过程是,用宏调用提供的实参字符串,【解析】带参数的宏的调用格式:宏名(实参表)

S 直接置换宏定义命令行中相应形参字符串,非形参字符保持不变。(k+j+2•被置换成k+j+2*k+j+2,

计算时先计算2*k,结果为21; S (j+k+2.被置换成j+k+2*j+k+2,计算时先计算2*j,结果为18。程序的运行结果是21,18,故A 选项正确。

4. 有以下程序

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

A.1,2,6, 8,10,12,7,8,9,10,

B.1,2,3,4,5,6, 7,8,9, 10,

C.1,2,3,4,10,12,14,16,9, 10,

D.1,2,6, 8,10,12,14,16, 9, 10,

答:A

【解析】数组名用作函数参数的情况类似于指针,属于传地址,故对形参数组元素的修改会同时修改实参。f ( )函数通过一个for 循环语句,将传入数组的元素从下标2到下标5每个各自乘以2。因此,调用结束时,数组a 中的内容为{1, 2,6,8,10,12,7, 8, 9,10}。

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

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

第 3 页,共 33 页

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

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

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

答:A

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

6. 有以下程序:

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

答:D

【解析】函数f 的功能是将重新定义的结构体b 整体赋给圯], 即数组a 的第二个元素,而数组a 的第一个元素不变。因此main 函数中调用函数f 时,即数组c 的第二个元素变成结构体b , 第一个元素不变。

7. 有以下程序

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

A.2,3,1

B.2,3,2

C.2,3,3

D.2,2,1

答:A

第 4 页,共 33 页