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

2017年西安电子科技大学软件学院902数据结构与C语言程序设计[专业硕士]之C程序设计考研导师圈点必考题汇编

  摘要

一、选择题

1. 有以下程序:

程序运行的结果是( )。

A.3 3 1

B.4 1

C.2

D.1

【答案】D

【解析】else 子句总是与最前面最近的不带else 的if 相结合,与书写格式无关,所以本题中的else 语句与第 二个if 语句配对,且if 和else 都在第一个if 的控制范围内。首先判断立,直接退出第一个if 语句,执行

输出结果为1。

2. 有以下程序:

程序的运行结果是( )。

A.5

B.2

C.6

D.3

第 2 页,共 43 页 不成的值是x 加之前的值,所以

【答案】A

【解析】malloc (size )函数的返回值是新分配的存储区的首地址,将该地址赋值给p 指针,然后取p 指针 的地址,调用fun 函数。fun 函数中对指向指针的指针s 指向的内存单元赋值,其中表示二维数组x 的第二行的行地址,

与等价,A 项正确。 表示二维数组X 的第二行第二列的地址,所以赋值给为p ,所以

代表fun 函数的功能是将二维数组X 的第二行第二列的值,即

3. 设变量已正确定义并赋值,以下正确的表达式是( )。

A.x=y*5=x+z

B.int (15.8%5)

C.x=y+z+5,++y

D.x=25%5.0

【答案】C

【解析】赋值运算左边必须是单一变量名。A 项错误,“y*5=x+z”部分是非法赋值。BD 两项错误,求余运算中的操作对象只能是整型。C 项,为逗号表达式。

4. 有以下程序:

程序的运行结果是( )。

A.0

B.5

C.14

D.15

【答案】B

dowhile 循环结构先执行后判断。【解析】先执行do 中的表达式执行while 中的表达式,结果为0, 退出循环,故最终结果是5。

5. 有以下程序:

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

第 3 页,共 43 页 即再

A.1

B.2

C.4

D.8

【答案】D

【解析】f (l )输出2,然后调用f (2)输出4, 再调用f (4)输出8。

6. 以下选项中,当x 为大于1的奇数时,值为0的表达式是( )。

A.x%2==l

B.x/2

D.x%2==0

【答案】D

【解析】x 为大于1的奇数,x%2的值为1,x%2==0为假。

7. 有以下定义和语句:

能给w 中year 成员赋1980的语句是( )。

【答案】D

【解析】w 是一个结构体变量,Pw 是一个结构体指针变量,指向w 所在的内存单元。A 项错误,pw 是指针,

所以在引用其内部变量时应该用操作符

是结构体workers 中的结构体成员s 中的成员。

8. 有以下程序:

程序的运行结果是( )。

A.11, 10

B.10, 10

C.10,11

第 4 页,共 43 页 而不是BC 两项错误,year