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

2018年河海大学计算机与信息院838数据结构及程序设计之C程序设计考研基础五套测试题

  摘要

一、选择题

1. 以下程序中关于指针输入格式正确的是( )。 A. B. C. D.

【答案】C

【解析】A 项错误,指针p 未初始化,且scanf 中p 的格式不对;B 项,指针p 未初始化;C 项正确,首先 将k 的地址赋值给p ,然后通过p 从键盘输入数据给k 赋值;D 项错误,给指针p 的赋值错误。

2. 有以下程序

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

A.9284

B.9824

C.6982

D.6385

【答案】D

【解析】p 定义了两个字符串指针,p[0]指向c[0], p[l]指向c[l]。所以,p[i][j]

等价于

作用是把字符串p[i]转化成10进制数,注意到内层循环中

中的第0个,第2个元素,取c[l]中的第0个,第2个元素。

3. 有以下程序:

第 2 页,共 44 页 结果取c[0]

程序的运行结果是( )。

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

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

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

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

【答案】A

【解析】程序的执行过程为:调用函数fun ,将数组c 地址与n 数值传入函数,此函数实现,将数组偶数位置元素从中间向前依次放入数组前半段,数组奇数位置元素从中间向后依次放入数组后半段,调用结果为之后依次输出。

4. 若变量均已正确定义并赋值,以下合法的c 语言赋值语句是( )。

【答案】A

【解析】A 项正确,返回0或者1, 然后赋值给x 。B 项错误,浮点数不能参与模运算;C 项错误, 是右值,不能给它赋值;D 项错误,5是常量,不能被赋值。

5. 有以下程序:

第 3 页,共 44 页

若运行时输入:35〈回车>,则输出结果是( )。

A.123

B.2

C.3

D.1

【答案】D

【解析】程序执行过程为:输入35<回车>, scanf 函数从键盘读人35赋值给x=35, 对if 条件进行判断,35>10, 条件成立,输出1,不再执行下面的elseif 语句,程序结束,输出结果为1, 故D 选项正确。

6. 以下叙述中错误的是( )。

A. 函数的返回值类型不能是结构体类型,只能是简单类型

B. 函数可以返回指向结构体变量的指针

C. 可以通过指向结构体变量的指针访问所指结构体变量的任何成员

D. 只要类型相同,结构体变量之间可以整体赋值

【答案】A

【解析】函数的返回值类型可以是结构体类型,也可以是指向结构体变量的指针类型,相同类型结构体变量 之间可以整体赋值,可以通过指针变量引用结构体成员。

7. 下列定义数组的语句中,正确的是( )。

A )

【答案】D

【解析】一维数组定义格式是:类型名数组名[整型常量表达式]。D 项正确,它使用预处理宏定义,N 可以看做是常量。A 项错误,没有指明数组的长度;B 项错误,数组长度不能由变量指明;C 项错误,数组长度应该整型常量表达式。

8. 有以下程序:

程序的运行结果是( )。

第 4 页,共 44 页 B )

C ) D )