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

2017年西北工业大学软件与微电子学院C语言程序设计(加试)复试仿真模拟三套题

  摘要

一、选择题

1. 若有定义语句A.

B.

C.

D.

【答案】C 执行了

之后,输入语句正确的是( )。

【解析】输入函数scanf 使用的标准形式是:scanf (格式控制,地址列表),格式控制和地址列表间用逗号隔开。由题知_即px 指向x 的地址,py 指向y 的地址。AD 两项错误,表达式中的x 和y 都需要取地址;B 项,格式控制和地址列表间用逗号隔开。

2. 有以下函数

以下关于aaa 函数功能叙述正确的是( )。

A. 求字符串S 的长度

B. 比较两个串的大小

C. 将串s 复制到串t

D. 求字符串8所占字节数

【答案】A

【解析】aaa ( )函数中,首先定义了一个字符指针t 指向形参s ,然后通过一个while 循环让指针t 不断递 增,直到t 指向字符串结束标志处。当t 指向结束标志处时,由于后缀++运算符的原因,它还会被再递增1,此 时t 指向字符串结束符

语句让它回到结束标志处。最后返回

束符,故返回值为字符串的长度值。

3. 表达式3.6-5/2+1.2+5%2的值是( )。

A.4.8

B.3.8

C.3.3

D.4.3

【答案】B

第 2 页,共 15 页 后面一个单元,所以接下来的因为s 还是指向字符串第1个字符处,而t 指向字符串结

【解析】3.6--5/2+1.2+5%2=3.6-2+1.2+l=3.8;需要注意的是,两个整数相除仍然得到整数,小数部分被省略,5/2=2。

4. 若变量已正确定义,有以下程序段:

其输出结果是。

A. 程序段有语法

B.3, 5,3

C.3, 5, 5

D.3, 5, 7

【答案】B

【解析】当a>b时,令a=b, a=3,b=5,因此a>b条件不成立,所以不执行a=b。然后c=a=3。此时“c!=a”条件不成立,不执行“c=b; ”语句。结果为a=3, b=5, C=3。

5. C 语言程序中,若函数无返回值,则应该对函数说明的类型是( )。

A.int

B.double

C.char

D.void

【答案】D

【解析】A 项,int 表示返回值是整型;B 项,double 表示返回值是双精度型;C 项,char 表示返回值是字符型;D 项,void 表示无返回值。

6. 有以下程序:

程序的运行结果是( )。

A.NelNN

B.ela2e3

C.NelNe2N

D.NalNNNN

【答案】C

第 3 页,共 15 页

【解析】k=0时,选择default 分支,输出N ; k=l时,

到break 语句,故继续执行

终输出

7. 若有以下定义:

则错误的语句是( )。

【答案】A 【解析】

8. 有语句

A.

B..

c.

D.

【答案】D 是一个变量而不是地址,A 选项应为分支,输出(:和_选择ease1分支,因为没有遇即输出e 和1。依次往下执行,最 以下选项中,与此语句功能相同的是( )。

.

_如果为假,直接返回0, 如果为真,再判断y

为真返回为1,否则返回0, 综合所知,只有时返回1,否则返回0。

二、设计题

9. 请编写一个函数fun , 它的功能是:将SS 所指字符串中所有下标为奇数位置的字母转换为大写(若该位 置上不是字母,则不转换)。

例如,若输入“abc4Efg ”,则应输出“aBc4EFg ”。

注意:部分源程序在文件PROG1.C 中。

请勿改动主函数main 和其他函数中的任何内容,仅在函数fun 的花括号中填入你编写的若干语句。

试题程序:

第 4 页,共 15 页