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

2017年青海民族大学计算机学院827计算机综合之C程序设计考研题库

  摘要

一、选择题

1.

若变量已正确定义。在

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

中,以下不可替代W 的是( )。

【解析】在C 语言中,并没有运算符,判断不相等时,使用其他三个选项都可以。

2. 设有n 个数按从大到小的顺序存放在数组x 中,以下能使这n 个数在x 数组中的顺序变为从小到大的是( )。

【答案】A

【解析】本题使用for 循环实现数组元素首尾倒置。A 项中控制变量上限为n/2, 用变量t 实现数组下标值i 与

的元素交换,使数组元素首尾倒置,从而实现从小到大排列,A 项正确。B

项控制变量上限为m 用变量t 实现数组下标值i 与n-i-1的元素交换,当i=n/2时,已经实现数组首尾倒置,而继续运行至i=n,将再次将新的数组首尾倒置,与原数组相比没有发生变化,依然是从大到小排列,B 项错误。C 项数组越界,i=0时x[n+ll不存在,C 项错误。D 项控制变量每次加2, 实现数组偶数下标值的元素首尾倒置,奇数下标值元素不变,不能实现整个数组从小到大排列,D 项错误。

3. 有以下函数

以下关于aaa 函数功能叙述正确的是( )。 A. 求字符串S 的长度 B. 比较两个串的大小 C. 将串s 复制到串t D. 求字符串8所占字节数 【答案】A

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

4. 有如下程序:

程序运行时,输入A.DCDC B.DCBA C.BABA D.ABCD 【答案】B

则输出结果是( )。

后面一个单元,所以接下来的

因为s 还是指向字符串第1个字符处,而t 指向字符串结

【解析】本题考查了函数的递归调用,进入函数后,字符变量ch 每次保存读进来的字

后,下一次读取不满足if 条

符,如果不是换行符,则继续读取下一个字符常量,当ch 保存完

件,函数进行输出,依次输出答案为B 选项。

5. 以下可以将任意一个两位整数n 的个位数与十位数对换的表达式为( )。

【答案】A

【解析】A 项得到十位数字,得到个位数字,将个位数乘以10加上十位数字

实现两位整数个位数与十位

是十位

实现将任意一个两位整数个位数与十位数对换,A 项正确。B 项

得到个位数字,

数之和,B 项错误。C 项

为十位数字,

不能实现题目中要求,C 项错误。D 项

数字,为原两位整数减去十位数字,不是个位数字,D 项错误。

6. 有以下程序:

程序运行的结果是( )。 A.3 3 1 B.4 1 C.2 D.1

【答案】D

【解析】else 子句总是与最前面最近的不带else 的if 相结合,与书写格式无关,所以本题中的else 语句与第 二个if 语句配对,且if 和else 都在第一个if 的控制范围内。首先判断立,直接退出第一个if 语句,执行输出结果为1。

7. 有如下程序:

程序运行后的输出结果是( )。 A.3,1,2,0, 0, B.3,5, 10, 4,0, C.3,3,3,3,0, D.3,2,2, 2,0, 【答案】A

不成

的值是x 加之前的值,所以