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

2017年曲阜师范大学C语言程序设计(同等学力加试)复试实战预测五套卷

  摘要

一、选择题

1. 有以下程序段:

已知字符a 的ASCII 码十进制值为97,则执行上述程序段后输出的结果是( )。 A. 因变量类型与格式描述符的类型不匹配输出无定值 B. 输出项与格式描述符个数不符,输出为零值或不定值 C.a ,97,12k=12 D.a ,97,k=12 【答案】D

【解析】字符变量中的值就是该字符的Ascn 代码值,

可以参与对整型变量所允许的任何运算。

c 表示以字符格式输出ch 的值,所以输出为a ; %d表示以十进制代码的形式输出。h

,然后以十进制的值,为97; k 没有对应的输出格式,不输出。在第二个语句中,首先输出“k=”代码输出k 的值,为12。

2. 有以下程序:

程序运行后的输出结果是( )。 A.k=6a=ll B.k=3a=14 C.k=4a=12 D.k=5a=15 【答案】C

【解析】第一次循环,k=l,s[l]=2, 执行

=2+2=4; 第三次循环

执行

第 2 页,共 24 页

. 第二次循环,执行

执行

第四次循环

=7+5=12,故最终输出k=4, a=12。

3. 设有定义:

则以下赋值语句中正确的是( )。 A.s[0]=m[l]; B.s=m; C.s.l3=m.n;

D.s[2].x=m[2].x; 【答案】A

【解析】定义了结构体类型数组s ,长度为2,结构体类型数组m ,长度为2,并进行了初始化。同类型的结构体可以直接用变量名实现赋值,A 选项正确。数组名为数组首地址,地址常量之间不可以相互赋值,B 选项错误。C 选项引用结构体成员错误,数组名为地址常量不是结构体变量,不能引用成员。D 选项数组越界,不存在s[2]与m[2]。

4. 以下合法的转义字符是( )。

A. B. C. D. 【答案】D 【解析】

5. 有如下程序:

程序运行后的输出结果是( )。 A.A45D78 B.ABC678 C.34CD78 D.34AB78 【答案】A

【解析】本题执行过程为:

if 条件不成立执行else 函数体,i%3=l, if 输出字符A ; i=l,

条件成立输出字符4; i=2, i%3=2, if 条件成立输出字符5; i=3, if 条件不成立,输出字符D ; i=4和i=5

第 3 页,共 24 页

表示1到2位十六进制所代表的字符,D 项正确。

时,分别输出字符7与8; i=6退出for 循环。所以程序运行后输出结果为A45D78, 故A 项正确。

6. 以下叙述中正确的是( )。

A. 语句

B. 对于字符串常量D. 在语句【答案】B

【解析】B 项正确,C 编译程序将自动在字符串常量最后添加串的存储单元,因此数组str 的长度大于字符串的长度。

7 设fp 为指向某二进制文件的指针,,.且已读到此文件末尾则函数

A. 非0值

C.0

D.NULL 【答案】A

【解析】当文件读到结尾时

8. 有如下程序:

程序运行后的输出结果是( )。 A.MN B.LK C.OP D.MM 【答案】B

ch —后值为‘L ’,【解析】程序执行过程为:定义字符变量ch=‘M ’,判断ch!=‘K ’成立,输出L ; 判断ch!=‘K ’成立,ch —后值为‘K ’,输出K ; 判断ch!=‘K ’不成立,退出循环。程序运行后的输出结果为LK 。

第 4 页,共 24 页

系统已自动在最后加入了

并不等价 字符,表示串结尾

C. 对于一维字符数组,不能使用字符串常量来赋初值

中,数组str 的大小等于字符串的长度

AC 两项错误,可以直接用

字符串常量给一维字符数组赋初值,习惯上均省略花括号;D 项错误,’\0’会占用一个不属于字符

的返回值为( )。

为非零值,否则为0。