为了帮助大家复习好2014年计算机等级考试,本次我们考吧网特为广大考生整理了计算机等级考试模拟试题,希望广大考生能够喜欢。本次主要汇编了计算机等级二级C语言精选试题:
一、选择题(每小题1分,共40小题,共40分)
25.有以下程序(说明:字母A的ASCIl码值是65):
#include
void fun(char*s)
{while(*s)
{if(*s%2)printf("%C",*s);
s++;
}
}
main()
{char a[]="BYTE"; 。
Fun(a);printf("");
}
程序运行后的输出结果是( )。
A.BY
B.BT
C.YT
D.YE
26.有以下程序段
#include
main()
{ .
.
.
while(getchar()!=’’);
.
.
.
}
以下叙述中正确的是( )。
A.此while语句将无限循环
B.getchar()不可以出现在while语句的条件表达式中
C.当执行此while语句时,只有按回车键程序才能继续执行
D.当执行此while语句时,按任意键程序就能继续执行
27.有以下程序:
#include
main()
{int x=1,y=0;
if(!x)y++;
else if(x==0)
if(x)y+=2;
else y+=3;
Drintf("%d"。v);
}
程序运行后的输出结果是( )。
A.3
B.2
C.1
D.0
28.若有定义语句:“char S[3][10],(*k)[3],*p;”,则以下赋值语句正确的是( )。
A.p=S;
B.p=k;
C.p=s[0];
D.k=s;
25.D。【解析]fun()函数的意思是当*s%2= =0的时候就输出并且s自加l次,然后判断。所以可知只有第2和第4个位置上的才符合要求,所以答案为D。
26.C。【解析】主要是考查while和getchar函数,getchar函数是输入字符函数,while是循环语句,所以当输入的字符为换行符时将执行。
27.D。【解析】因为x!=0,所以下列的循环不执行,只执行y++,最后结果为0。
28.C。【解析】答案C的意思是*P指向数组的第一个值。
29.有以下程序
#include
void fun(char*c)
{while(*c)
{if(*c>=’a’&&*c<=’2’)*c=*c=(’a’-’A’);
c++;
}
}
main()
{char s[81];
gets(s);fun(;)puts(s);
当执行程序时从键盘输入Hello Beijing<回车>,则程序的输出结果是( )。
A.hello beijing
B.Hello Beijing
C.HELLO BEIJING
D.hELLO Beijing
30.以下函数的功能是:通过键盘输入数据,为数组中的所有元素赋值。
#include
#define N l0
void fun(int x[N])
{int i=O;
while(i }
在程序中下划线处应填人的是( )。
A.x+i
B.&x[i+1]
C.x+(i++)
D.&x[++i]
31.有以下程序
#include
main()
{char a[3O],b[30];
scanf("%S",a);
gets(b);
printf("%s%s",a,b);
}
程序运行时若输入:
how are you? I am fine<回车>
则输出结果是( )。
A.how are you? I am fine
B.how are you?I am fine
C.how are you?I am fine
D.how are you?
32.设有如下函数定义:
int fun(int k)
{if(k<1)return 0;
else if(k= =l)return l;
else return fun(k-1)+1:
}
若执行调用语句:“n=fun(3);”,则函数fun总共被诃用的次数是( )。
A.2
B.3
C.4
D.5
29.C。【解析】此程序是进行将小写字母变成大写操作,所以答案为C。
30.A。【解析】程序主要是为数组赋值。答案为A。
31.B。【解析】此题主要考查scanf函数和gets函数的区别。答案为B。
32.B。【解析】此题考查简单的循环,当执行n=fun(3),则函数fun执行3次。
推荐阅读: