学习网考试学习资料

Gzu521.com

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

全国计算机等级考试   点击:次   发布时间:2007-9-13   【字体: 】   来源:Gzu521.com
贵州学习网—属于你的学习中心
z%*eLcq%iWTA=VX'% [ 本 资 料 来 源 于 贵 州 学 习 网 IT认证全国计算机等级考试 http://Www.gzU521.com ] z%*eLcq%iWTA=VX'%

(21)对表达式for(表达式1; ;表达式3)可理解为
a)for(表达式1;0;表达式3)
b)for(表达式1;1;表达式3)
c)for(表达式1;表达式1;表达式3)
d)for(表达式1;表达式3;表达式3)
正确答案:  b
(22)以下程序的输出结果是
main()
{int a,i;a=0;
for(i=1;i<5;i++)
{switch(i)
{case 0:
case 3:a+=2;
case 1:
case 2:a+=3;
default:a+=5;
}
}printf("%d\n",a);
}
a)31
b)13
c)10
d)20
正确答案:  a
(23)若有如下语句
int x=3;
do{ printf("%d\n",x-=2);}
while(!(--x));
则上面程序段
a)输出的是1
b)输出的是1和-2
c)输出的是3和0
d)是死循环
正确答案:  b
(24)判断char型变量cl是否为大写字母的正确表达式是
a)′a′<=cl<=′z′
b)(cl>=a)&&(cl<=z)
c)(′a′>=cl)||(′z′<=cl)
d)(cl>=′a′)&&(cl<=′z′)
正确答案:  d
(25)下面程序的功能是将从键盘输入的一对数,由小到大排序输出,当输入一对相等数时结束循环,请选择填空。
#include <stdio.h>
main()
{int a,b,t;
scanf("%d%d",&a,&b);
while(_______)
{if(a>b)
{t=a;a=b;b=t;}
printf("%d,%d\n",a,b);
scanf("%d%d",&a,&b);
}
}
a)!a=b
b)a!=b
c)a==b
d)a=b
正确答案:  b
(26)以下对c语言函数的有关描述中,正确的是
a)在c语言中调用函数时,只能把实参的值传给形参,形参的值不能传送给实参
b)c函数既可以嵌套定义又可以递归调用
c)函数必须有返回值,否则不能使用函数
d)函数必须有返回值,返回值类型不定`
正确答案:  a
(27)有以下程序:
void fun(int a,int b,int c)
{a=456,b=567,c=678;}
main()
{int x=10,y=20,z=30;
fun(x,y,z);
printf("%d,%d,%d\n",x,y,z);
}
输出结果是
a)30,20,10
b)10,20,30
c)456,567,678
d)678,567,456
正确答案:  b
(28)有如下程序段
int *p,a=10,b=1;
p=&a; a=*p+b;
执行该程序段后,a的值为
a)12
b)11
c)10
d)编译出错
正确答案:  b
(29)有如下说明
int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a;
则数值为9的表达式是
a)*p+9
b)*(p+8)
c)*p+=9
d)p+8
正确答案:  b
(30)以下程序中调用scanf函数给变量a输入数值的方法是错误的,其错误原因是
main()
{ int *p,*q,a,b;
p=&a;
printf("input a:");
scanf("%d",*p);
}
a)*p表示的是指针变量p的地址
b)*p表示的是变量a的值,而不是变量a的地址
c)*p表示的是指针变量p的值
d)*p只能用来说明p是一个指针变量
正确答案:  b

(31)对以下说明语句的正确理解是
int a[10]={6,7,8,9,10};
a)将5个初值依次赋给a[1]至a[5]
b)将5个初值依次赋给a[0]至a[4]
c)将5个初值依次赋给a[6]至a[10]
d)因为数组长度与初值的个数不相同,所以此语句不正确
正确答案:  b
(32)若有说明:int a[][4]={0,0};则下面不正确的叙述是
a)数组a的每个元素都可得到初值0
b)二维数组a的第一维大小为1
c)当初值的个数能被第二维的常量表达式的值除尽时,所得商数就是第一维的大小
d)只有元素a[0][0]和a[0][1]可得到初值,其余元素均得不到确定的初值
正确答案:  d
(33)有以下程序
main()
{ char a[]={ ′a′, ′b′, ′c′,′d′, ′e′, ′f′, ′g′,′h′,′\0′}; int i,j;
i=sizeof(a); j=strlen(a);
printf("%d,%d\b",i,j);
}
程序运行后的输出结果是
a)9,9
b)8,9
c)1,8
d)9,8
正确答案:  d
(34)假定int类型变量占用两个字节,其有定义:int x[10]={0,2,4};,则数组x在内存中所占字节数是
a)3
b)6
c)10
d)20
正确答案:  d
(35)已知学生记录描述为:
struct student
{ int no;
char name[20],sex;
struct
{ int year,month,day;
} birth;
};
struct student s;
设变量s中的"生日"是"1984年11月12日",对"birth"正确赋值的程序段是
a)year=1984;month=11;day=12;
b)s.year=1984;s.month=11;s.day=12;
c)birth.year=1984;birth.month=11;birth.day=12;
d)s.birth.year=1984;s.birth.month=11;s.birth.day=12;
正确答案:  d

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

责任编辑:gzu521

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