二级C语言分类模拟题528 下载本文

内容发布更新时间 : 2024/12/27 11:19:00星期一 下面是文章的全部内容请认真阅读。

二级C语言分类模拟题528

(总分:52.50,做题时间:90分钟)

一、选择题(总题数:35,分数:52.50)

1.以下选项中能表示合法常量的是______。 (分数:2.50) A.\√ B.1.5E2.0 C.\ D.1,200

解析:[解析] E前E后有数字,E后数字为整数,B错误;\为转义字符,后面跟特定字符,用来表示ASCII字符,C错误;一个整数之间不能有逗号,D错误。 2.有以下程序: #include<stdio.h> main()

{ struct cmplx{int x; int y; } cnum[2]={1, 3, 2, 7}; printf(\程序的运行结果是 (分数:2.00) A.0 B.1 C.3 D.6 √ 解析: 3.有以下程序 #include <stdio.h> int fun(int a,int b) { if(b==0) return a; else return(fun(--a,--b)); } main()

{ printf(\程序的运行结果是______。 (分数:2.50) A.1 B.2 √ C.3 D.4

解析:[解析] 由程序可知,函数fun(int a,int b)是一个递归函数。所以当主函数中调用fun(4,2)时,其执行过程如下“fun(4,2)->fun(3,1)->fun(2,0)”,其返回值为2。所以正确答案为选项B。 4.有以下程序: #include<stdio.h> main() { int x=8; for(;x>0;x--) { if(x%3)

{

printf(\contmue; }

printf(\} }

程序运行后的输出结果是______。 (分数:1.00) A.7,4,2, B.8,7,5,2, C.9,7,6,4, D.8,5,4,2, √

解析:[解析] coutinue的作用是跳出循环体中剩余的语句而进行下一次循环。第一次循环x的值为8,循环体中if条件成立,打印x的值8后将x减1,再执行continue语句,跳出本次循环。第二次判断循环条件时,x的值变为6,不满足循环体内if条件,执行打印-x的操作,即打印5后跳出循环。第三次判断循环条件时x的值为4,满足循环体中if条件,执行打印x--的操作,即打印4,后将x值减一,执行continue语句,跳出本次循环。第四次判断循环条件时x的为2,满足循环体中if条件,打印x--,即打印2后将x减一,执行continue语句,跳出本次循环。在进行for条件表达式中第三个表达式c--的操作后x的值为0,不满足条件结束循环。所以打印结果为“8,5,4,2,”。 5.有以下程序 #include<stdio.h> main() {int i,j;

for(i=3;i>=1;i--)

{for(j=1;j<=2;j++)printf(\printf(\} }

程序的运行结果是______。 (分数:1.00) A.2 33 42 3 B.4 32 54 3 C.2 33 44 5 D.4 53 52 3 √

解析:[解析] 第一次循环i值为3,i值分别为1和2,所以输出为4和5;第二次循环i值为2,j值分别为1和2,所以输出为3和4;第三次循环i值为1,j值分别为1和2,所以输出为2和3,答案选择D。 6.结构化程序设计主要强调的是______。 (分数:1.00) A.程序的规模 B.程序的效率

C.程序设计语言的先进性 D.程序易读性 √

解析:[解析] 本题考查考生的结构化程序设计的思想。结构化程序设计强调的是程序的易读性。 7.以下错误的定义语句是______。 (分数:1.00)

A.int x[4][]={{1,2,3},{1,2,3},{1,2,3},{1,2,3}}; √ B.int x[4][3]={{1,2,3},{1,2,3},{1,2,3},{1,2,3}}; C.int x[][3]={{0},{1},{1,2,3}};

D.int x[][3]={1,2,3,4};

解析:[解析] 二维数组定义行数可以省略,列数不能省略,所以答案选择A。 8.C语言规定,在一个C程序中,main函数的位置______。 (分数:2.00)

A.必须在系统调用的库函数之后 B.必须在程序的开始 C.必须在程序的最后 D.可以在任意位置 √ 解析:

9.以下选项中不能用作C语言程序合法常量的是______。 (分数:1.00) A.1,234 √ B.\ C.123 D.“/x7G”

解析:[解析] A选项中逗号是一个操作符。 10.设有如下语句: int k=0;

k=printf(\

则以下叙述中正确的是______。 (分数:1.00)

A.printf必须作为独立语句出现 B.变量k得到的是输出的可见字符个数2 C.变量k得到的是输出字符的总个数3 √ D.变量k仍保持初值0

解析:[解析] printf()函数的原型如下: extern int printf(const char *format,...);

它是有返回值的,返回值是打印出来的字符个数,题意中的字符串“OK/n”输出3个字符,所以k的值为3。故本题答案为C选项。 11.有以下程序: #include<stdio.h> main() { char ch; ch=\

printf(\}

程序的输出结果是______。 (分数:2.50) A.67,C √ B.B,C C.C,D D.不确定的值

解析:[解析] char ch;ch=\;//计算字符\即\,因为\与\码就差2,得\

printf(\,%c/n\,ch,ch);//%d是按整型输出,输出的是ch的ASC码,查表可得67 //%c是按字符型输出,输出为C

所以输出就为67,C。因此A为正确选项。 12.C语言程序的执行是______。 (分数:2.00)