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

2018年河海大学计算机与信息院838数据结构及程序设计之C程序设计考研强化五套模拟题

  摘要

一、选择题

1. 为了建立如图所示的存储结构(即每个结点含两个域,data 是数据域,next 是指向结点的指针域),则在处应填入的选项是( )。

【答案】C

【解析】结构体中的成员可以是各种类型的指针变量。当一个结构体中有一个或多个成员的基类型是本结构体类型时,称为“引用自身的结构体”。题目中next 指针指向struct 自身结点。

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

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

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

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

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

【答案】A

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

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

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

A.12

B.11

C.10

D.9

【答案】D

k 的初值是八进制数011, 转换为十进制数就是9, 在输出时自增运算符【解析】是作为后

缀出现的,因此是先输出9, 然后k 的值再自增1。

4. 若已有定义语句:inta , b, c; ,且变量己正确赋初值,则以下选项中正确的赋值表达式是( )。

A.a= (b=c) +8;

B. (a=b) =c=9;

C.a= (b==c) = ‘A ’ ;

D.a+b=c+l;

【答案】A

【解析】A 项正确,将c 赋值给b 后又加上8, 然后再赋值给a ; B、D 项错误,赋值运算符左边必须是一个变量;C 项错误,

5. 有以下程序

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

A.-12

B.9

C.0

D.3

【答案】A

【解析】C 语言中,

表达式从右向左计算。

等价于

6. 有以下程序

是个表达式,语法错误。 可以写成

等价于

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

A.aBcDeF

B.ABCDEF

C.AbCdEf

D.abcdef

【答案】c

【解析】i 为奇数,输出小写字符‘a ’加i ,i 为偶数,输出大写字符‘A ’加i 。

7. 以下程序段中的变量已正确定义:

程序段的输出结果是( )。 A. B. C. D.

【答案】D

【解析】for 语句在没有说明时,仅仅是跟随其后的第一条语句。这时注意第二个for 循环有一个“;”结束,所以视为空语句,表示什么也不做,然后是下一个顺序语句,即输出语句,这时没有for 循环,只输出一个“*”。

8. 以下函数findmax 拟实现在数组中查找最大值并作为函数值返回,但程序中有错导致不能实现预定功能。

造成错误的原因是( )。

A. 定义语句

B. 赋值语句

C. 语句

D. 赋值语句

【答案】D

【解析】本题中for 循环中首先将MIN 值赋值给max , 然后用

中max 未赋初值 中,不应给max 赋MIN 值 中判断条件设置错误 放错了位置 与max 的值比较。每次都是