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

2016年西华师范大学计算机学院C语言程序设计(同等学力加试)复试笔试最后押题五套卷

  摘要

一、选择题

1. 若有以下定义和语句:

则值为6的表达式是(提示:

答:D

的优先级高于

( )。

【解析】定义指向结构体变量的指针P ,并将结构体数组首地址赋给加一指向数组第二个元素,其成员ri=6, D 项正确员5。

2. 有以下程序段:

若文件

已存在,则以下叙述正确的是( )。

中的原有内容将全部消失

A. 程序运行后,文件C. 对文件D. 对文件答:A

式为5, 之后再自加一

指向结构体数组第一个元素,其成员n=5,由于

指针自

指向结构体数组第一个元素,其成

是后缀,先取值,所以表达

为结构体数组第一个元素,其成员n=5, 先取值,表达式为

B. 程序运行时,会因文件存在而出错

进行写操作后,可以随机进行读取 写入的内容总是被添加到文件尾部

【解析】fopen 函数以一定方式打开指定文件,返回一个指向文件的文件指针,如果不能实现打开指定文件的操作,则返回一个空指针NULL 。如果指定文件不存在,则创建一个文件名为指定文件名的新文件,然后打开它。在指定文件有错误或者指定文件不存在却不能创建新文件的情况下,打开文件操作错误,返回空指针。本题程序中,文件

第 2 页,共 34 页

已存在,程序运行后,文件

中的原有内容将全部消失,A 选项正确。文件原本就存在,不会导致程序出错,会按照

指定的方式打开文件,B 选项错误。对文件进行写操作,只能对指针指向的位置内容进行写操作,不能随机读写,C 选项错误。对文件件尾部,D 选项错误。

3. 以下选项中,合法的是( )。

A. B. C. D. 答:A

写入的内容写到指针所指向的位置,而不是添加在文

【解析】A 中是在赋初值时直接赋字符串常量。B 项错误,str4是字符变量不能赋值为字符串常量;CD 两项错误,字符串常量给出的是地址值,而数组名name 是一个地址常量,不能被重新赋值。

4. 程序中已构成如下图所示的不带头结点的单向链表结构,指针变量s 、p 、q 均已正确定义,并用于指向链表结点,指针变量s 总是作为头指针指向链表的第一个结点。

若有以下程序段

该程序段实现的功能是( )。 A. 删除首结点 B. 尾结点成为首结点 C. 首结点成为尾结点 D. 删除尾结点 答:C

【解析】进过while 循环后,p 指向链表的尾结点

5. 若有以下定义

则对x 数组元素的正确引用是( )。

A.

B.

C.

D.

第 3 页,共 34 页

是把q 置为p 的next

结点

q 的next 结点为空,此时q 结点成为链表的尾结点。

答:B

【解析】pt 是int 类型指针,指向int 数组x 的首部。B 项,项,相当于

x 的长度是10, 访问越界;C 项,相当于

指向x 中第3个元素,并非是对x 数组元素的引用。

6. 有以下程序

程序的运行结果是( )。 A.accbbxxyy ,bbxxyy B.acc ,bbxxyy C.accxxyy ,bbxxyy D.accxyy ,bbxxyy

答:A

【解析】函数fun 的功能是将第二个字符串链接到第一个字符串的末尾,第二个字符串不变。

7. 有以下程序:

程序运行后的输出结果是( )。 A.6, 1 B.1, 1 C.7, 1 D.1, 2

答:C

【解析】表达式

. 中,>>是右移符号,数字13换算成二进制后右移1位,再和

中,首先判断13是否大于1,此时条件成立

1进行按位或运算,结果为7; 表达式

相当于

引用正确。A

访问越界;D 项,int 类型指针,

返回1后,再和1进行或运算,结果为1,因此答案为C 选项。

8. 有以下程序:【程序中含有错误】

第 4 页,共 34 页