学习网考试学习资料

Gzu521.com

2007年9月计算机等级考试二级C模拟试题(6)(2)

全国计算机等级考试   点击:次   发布时间:2007-9-15   【字体: 】   来源:Gzu521.com
贵州学习网—属于你的学习中心

(21)以下程序的输出结果是
main()
{ int i,j,x=0;
for(i=0;i<2;i++)
{ x++;
for(j=0;j<3;j++)
{ if(j%2)continue;
x++;
}
x++;
}
printf("x=%d\n",x);
}
a)x=4
b)x=8
c)x=6
d)x=12
正确答案:  b

(22)设有以下程序段
int x=0,s=0;
while(!x!=0)s+=++x;
printf("%d",s);

a)运行程序段后输出0
b)运行程序段后输出1
c)程序段中的控制表达式是非法的
d)程序段执行无限次
正确答案:  b

(23)对下ⅰ,ⅱ两个语句描述正确的是
ⅰ.while(1)ⅱ.for(;;)
a)都是无限循环
b)ⅰ是无限循环,ⅱ错误
c)ⅰ循环一次,ⅱ错误
d)以上答案都错
正确答案:  a

(24)若有以下定义,则能使值为3的表达式是
int k=7,x=12;
a)x%=(k%=5)
b)x%=(k-k%5)
c)x%=k-k%5
d)(x%=k)-(k%=5)
正确答案:  d

(25)设有:
int a=1,b=2,c=3,d=4,m=2,n=2;
执行 (m=a>b)&&(n=c>d)后n的值是
a)1
b)2
c)3
d)4
正确答案:  b

(26)以下描述中正确的是
a)由于do-while循环中循环体语句只能是一条可执行语句,所以循环体内不能使用复合语句
b)do-while循环由do开始,用while结束,在while(表达式)后面不能写分号
c)在do-while循环体中,是先执行一次循环,再进行判断
d)do-while循环中,根据情况可以省略while
正确答案:  c

(27)以下函数返回a所指数组中最小的值所在的下标值
fun(int *a, int n)
{ int i,j=0,p;
p=j;
for(i=j;i<n;i++)
if(a[i]<a[p])________;
return(p);}
在下划线处应填入的是
a)i=p
b)a[p]=a[i]
c)p=j
d)p=i
正确答案:  d

(28)以下叙述正确的是
a)函数可以嵌套定义但不能嵌套调用
b)函数既可以嵌套调用也可以嵌套定义
c)函数既不可以嵌套定义也不可以嵌套调用
d)函数可以嵌套调用但不可以嵌套定义
正确答案:  d

(29)若有说明语句
char a[]="it is mine";
char *p="it is mine";
则以下不正确的叙述是
a)a+1表示的是字符t的地址
b)p指向另外的字符串时,字符串的长度不受限制
c)p变量中存放的地址值可以改变
d)a中只能存放10个字符
正确答案:  d

(30)以下程序的运行结果是
sub(int x,int y,int *z)
{*z=y-x;}
main()
{ int a,b,c;
sub(10,5,&a);
sub(7,a,&b);
sub(a,b,&c);
printf("%4d,%4d,%4d\n",a,b,c);}
a)5,2,3
b)-5,-12,-7
c)-5,-12,-17
d)5,-2,-7
正确答案:  b

(31)若二维数组a有m列,则计算任一元素a[i][j]在数组中相对位置的公式为 (假设a[0][0]位于数组的第一个位置上)
a)i*m+j
b)j*m+i
c)i*m+j-1
d)i*m+j+1
正确答案:  a

(32)下列说法正确的是
int i,x;
for(i=0,x=0;i<=9 &&x!=876;i++)scanf("%d",x);
a)最多的执行10次
b)最多执行9次
c)是无限循环
d)循环体一次也不执行
正确答案:  a

(33)若有下面的程序片段:
int[12]={0},*p[3],**pp,i;
for(i=0;i<3;i)
p[i]=&a[i*4];
pp=p;
则对数组元素的错误引用是
a)pp[0][1]
b)a[10]
c)p[3][1]
d)*(*(p+2)+2)
正确答案:  c

(34)若有说明:int a[3][4]={0};则下面正确的叙述是
a)只有元素a[0][0]可得到初值0
b)此说明语句不正确
c)数组a中各元素都可得到初值,但其值不一定为0
d)数组a中每个元素均可得到初值0
正确答案:  d

(35)对下面程序描述正确的一项是 (每行程序前面的数字表示行号)
1   main()
2   {
3   float a[3]={0.0};
4   int i;
5   for(i=0;i<3;i++)scanf("%d",&a[i]);
6   for(i=1;i<3;i++)a[0]=a[0]+a[i];
7   printf("%f\n",a[0]);
8   }
a)没有错误
b)第3行有错误
c)第5行有错误
d)第7行有错误
正确答案:  c

上 一 页 下 一 页
文共4页:第 【1】 【2】 【3】 【4】

责任编辑:gzu521

IT认证分类
计算机软件水平考试
全国计算机等级考试
思科认证
微软认证
ORACLE/CIW认证
Linux认证
JAVA认证
其它认证
分类推荐信息
更多...
大类最新文章
更多...