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 页