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

2017年北京印刷学院信息工程学院827电子与通信工程综合基础[专业硕士]之C程序设计考研导师圈点必考题汇编

  摘要

一、选择题

1. 有以下程序段:

A.5

B.10

C.12

D. 无法确定

【答案】A

【解析】当直接用数组名给指针赋初始化值时,表示把数组首地址的值赋给指针,

把地址赋给表示将数组第5个元素地址赋给

2. 有以下程序:

表示

故答案为A 选项。

的值为( )。

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

A.32

B.16

C.1

D.0

【答案】C

【解析】本题中,将a 赋值为8, 那么a 的二进制表示为“00001000”,将a 向右移动3位,变为了“00000001”,十进制数为1。

3. 有以下程序(其中k 的初值为八进制数):

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

A.12

B.11

C.10

D.9

【答案】D

【解析】k 的初值是八进制数011,转换为十进制数就是9,在输出时自增运算符“++”是作为后缀出现的,因此是先输出9,然后k 的值再自增1。

4. 有以下程序:

I

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

A.5

B.6

C.8

D.9

【答案】D

【解析】fun 函数的功能是在屏幕上打印输入参数p 后的第五个元素。在main 中,a[3]的值为4, &a[3]即为取a[3]所指内容的地址,数组默认地址从0开始,p 指向4的地址,故

5. 设x 、y 、z 均为实型变量,代数式

A.x/y+z

B.x%y%z

C.x/y/z

D.x*z/y

【答案】C

【解析】X 、/的结合顺序是从左到右,所以x 先除以y , 再除以z 。

6. 若有以下程序

则程序的输出结果是( )。

A.11,2

B.25,2

应为9。在C 语言中的正确写法是( )。

C.11,12

D.25,26

【答案】D

【解析】S (k+j)展开后是(3+2)*(3+2)=25,T (k+j)展开后是(3+2)*(3+2)/(3+2)*(3+2)+1=26。

7. 设有定义

【答案】D

【解析】AC 两项,赋值运算优先级最低,所以先做

B 项,做x++运算后得到3, 然后做;D 项,运算得6,

值仍为2, 所以 最终为4。

8. 有如下程序:

若要从键盘读入姓名给结构体变量zhangsan 的name 成员,输入项错误的是( )。

【答案】A

【解析】可用以下3种形式来引用结构体变量中的成员:①结构体变量名. 成员名;②指针变量名成员名;③(*指针变量名). 成员名。程序定义了一个结构体变量zhangsan , —个结构体指针ptr , 并且使指针指向变量zhangsan 。A 项zhangsan 为结构体变量名,不能用一〉引用其成员,A

项错误。均是正确的引用结构体变量成员的方式。

9. 要求定义一个具有6个元素的int 型一维数组,以下选项中错误的是( )。

A.

B.

C.

D.

【答案】A

以下表达式中,值不为6的是( )。

此时为3, 然后做

虽然结果为4, 但此时x 的