全国计算机等级考试二级C语言真题库之选择题(11) 下载本文

(x, y, 0);

(0

则程序的输出结果是 A) 1,5,9,13,4,8,12,16, B) 4,8,12,16,1,5,9,13, C) 1,2,3,4,13,14,15,16, D) 13,14,15,16,1,2,3,4, 参考答案:A

【解析】该题首先初始化二维数组 ( ? (b[i] > a[i][j]) : (b[i] < a[i][j]))条件语句的条件表达式使用了条件运算符构成的选择结构,即为真时,以(b[i] > a[i][j])作为条件表达式的值,否则以(b[i] < a[i][j])作为条件表达式的值函数功能是给一维数组赋值?(x, y, 1);该函数调用后,即当为真时,使一维数组获得二维数组第1列的数值(x, y, 0);该函数调用后,即当为假时,使一维数组获得二维数组第4列的数值;因此A选项正确?

28.若有以下程序 <>

( a[ ], n)

21 / 36

{ ;

(1; i

(a[i] > a[j]) { [i]; a[i][j][j];} } ()

{ c[10]={10,9,8,7,6,5,4,3,2,1}; (c, 10);

(0<10; ) (\ (\ }

则程序的输出结果是 A) 1,10,3,8,5,6,7,4,9,2, B) 10,9,8,7,6,5,4,3,2,1, C) 2,9,4,7,6,5,8,3,10,1, D) 10,1,8,3,6,5,4,7,2,9, 参考答案:D

【解析】该题首先对一维数组进行初始化,c[0]到c[9]依次赋值为10到1;(c, 10);语句调用函数,函数的功能是将一维数组偶数位元素的数值由小到大排序;最后将排好序的新的一维数组进行输出。因此D选项正确。

22 / 36

29.若有以下程序 <> () { 0; a[]=\ (0; a[i]; )

(a[i] ' ') a[][i]; a[j]='\\0'; (\ }

则程序的输出结果是 A) ! B) C) ! D) !

参考答案:C

【解析】主函数中首先定义字符数组a[]=\执行循环语句,

23 / 36

语句 (a[i] ' ') a[][i]; 其功能是将字符数组中的空格去掉。因此C选项正确。

30.若有以下程序 <> *\

b[ ]=\ ()

{ i, 0; *p; ( 0; b[i] '\\0'; ) { (*a b[i]) { ;

(; *'\\0'; ) { (*p b[j]) ; ; } (*'\\0') ; } }

(\ }

24 / 36

则程序的输出结果是 A) ! B) ! C) ! D) !

参考答案:D

【解析】该程序首先定义*a和b[ ],并进行初始化。主函数中通过外层循环语句,遍历字符数组b[ ],并且将符合条件语句的字符赋给数组p;内层循环语句,遍历字符数组a[ ]。再将符合条件语句的结果输出。因此D选项正确。

31.若有以下程序 <> ()

{ a[20], b[ ]=\ (0; i<7; ) (\ (a); (\ }

执行时若输入: (其中<>表示回车符) . <>

25 / 36