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

2016年沈阳化工大学信息工程学院518单片机原理及应用(含程序设计)之程序设计复试笔试最后押题五套卷

  摘要

一、选择题

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

A. B. C. D. 答:A 【解析】C 语言中,表示响铃,表示退格,

2. 执行以下程序段后,S 的值为( )。

A.13 B.16 C.17 D.45 答:B

【解析】

3. 有以下程序:

程序的运行结果是( )。 A.1, 2 B.3, 6 C.4, 7

D. 变量的地址值 答:B

【解析】程序的执行过程为:定义整型数组结构体数组X ,并为其初始化,则

并进行初始化,两个数组长度均为2。定义

输出x[0]的成员指针b

表示回车不换行,故答案为A 选项。

的作用是访问数组a 中下标为k

的元素。

k=0时

指向的内存单元值,即数组xl 的第一个元素3, 输出x[l]的成员指针b 指向的内存单元值,即数组

x2的第一个元6。程序的运行结果是3,6, 故B 选项正确。

4. 如有表达式则其中与w 等价的表达式是( )。

A.w==l B.w==0

c.

D. 答:D

【解析】在C 语言中,没有专门的“逻辑值”,而是用非0表示“真”,用0表示“假”。此条件表达式的形式为<表达式1>?<表达式2>:<表达式3>, 当表达式1的值为真,即为非零时,求出表达式2的值作为结果;当表达式1的值为假,求出表达式3的值作为结果。可见表达式W ,不为1时返回(++y)等价于W!=0。A 项,w==l表示当w 的结果为1是返回(-X )。

5. 有以下程序:

程序运行后的输出结果是( )。 A.12 B.11 C.10 D.9 答:C

【解析】表示按照八进制赋值,则十进制数为9, 所以输出++x的结果为10。

6. 设有如下程序段:

语句后,以下叙述正确的是( )。 表示

则执行A. 可以用

B.s 数组中元素的个数和p 所指字符串长度相等 C.s 和p 都是指针变量

D. 数组s 中的内容和指针变量p 中的内容相等 答:A

【解析】A 项正确,

后,指针p 指向s 的首地址,

B 项错误,p 是字符串指针所

指向的字符串为“Beijing”,其长度为7, 而数组a 中元素的个数为20; C项错误,s 为字符数组名;D 项,s 中的空间大于 p 所指空间。

7. 以下叙述中正确的是( )。

A.

语句B.

语句C.

语句D. 语句符

答:A

【解析】A 项正确,表示定义了长度为8的int 型数组,它里面的每个元素都是0。当所赋初值少于所定义数组的元素个数时,将自动给后面的元素补以初值0。B 项错误,C 语言规定可以通过赋初值来定义数组的大小,这时数组说明符的一对方括号中可以不指定数组的大小;C 项错误,a 是char 类型的数组,里面的元素应该是字符而非字符串,应该用单引号括起来;D 项错误,数组变量一旦定义,其地址值不可改变,不能给数组名重新赋值。

8. 有以下程序

程序运行后的输出结果是( )。 A.24 B.44 C.22 D.46 答:B

【解析】p 是int 类型的指针,指向数组a 的首元素;k 的int*类型的指针,指向int*

变量

先执行p++,p 指向a 中第二个元素,然后取值,输出

9. 设有定义:

则以下赋值语句中错误的是( )。 A.data2=datal;

B.data2=(2,6); C.data2.real=datal.real; D.data2.real=datal.unreal; 答:B

【解析】B 项错误,对结构体进行初始化时,应该用花括号括起来的一组值,而不是用小括

是合法的

是不合法的,遗漏了数组的大小

是合法的,定义了一个包含两个字符的数组

是合法的,因为数组有三个字符空间的容量,可以保存两个字