一、选择题
1. 设有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 项错误。
2. 以下选项中,当x 为大于1的奇数时,值为0的表达式是( )。
A. B. C. D. 【答案】D 【解析】x 为大于1的奇数,
3. 若有以下定义和语句:
的值为1,
为假。
则输出结果是( )。 A.5 5
B.10 5 C.10 7 D.5 8 【答案】A
【解析】strlen 函数是测试字符串长度的函数,求字符串的实际字符个数,不包括字符内,
在字符义字符
,
4. 有以下程序
程序的运行结果是( )。 A.11 7 B.12 12 C.11 11 D.12 7 【答案】A
【解析】f (2)展开后为,2*5+1,值为11,f (1+1)展开后为,1+1*5+1值为7。
5. 设有函数定义:则以下对函数sub 的调用语句中,正确的是( )。
A. B. C. D.
【答案】A
【解析】函数的参数有两个,第一个是整型,第二个是字符类型,在调用函数时,实参必须一个是整型,一个是字符型相容的类型(整型)。A 项中97为字符传入函数,A 项正确。B 项
C 项错误。D 项
的
码,可以作为字符
不是合法字符,字符单引号里面只能有一个字符,B 项错误。
之后的所有字符均不计入长度中。所以的含义是一个字符【程序有错,
应为
而以】
所以s2
所指向的内容实际上是
在所以
开头的字符序列是转
函数sub 返回类型为空,即不返回任何值,故C 项中将函数返回值赋给n 是不正确的调用方法,
为字符串,也不是合法的字符,D 项错误。
6. 有语句:
A. B.. c. D.
【答案】D
以下选项中,与此语句功能相同的是( )。
.
_如果为假,直接返回0, 如果为真,再判断y【解析】D 项正确,题中,先判断
为真返回为1,否则返回0, 综合所知,只有时返回1,否则返回0。
7. 有以下程序:
程序运行后的输出结果是( )。 A.4 B.10 C.14 D.6
【答案】B
【解析】函数f 的功能是通过递归计算数组t 中元素的和。在主函数中调用了递归函数(f 将
递
归
函
数
f
(
) 的递归式展开
8. 有以下程序:
), ,