全国计算机等级考试二级笔试样卷C语言程序设计有答案
全国计算机等级考试二级笔试样卷C语言程序设计
【】【字体:】【】
一、选择题((1)~(10)、(21)~(40)每题2分,(11)~(20)每题2分,共70分)
下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上,答在试卷上不得分。
(1)下列选项中不符合良好程序设计风格的是
A)源程序要文档化B)数据说明的次序要规范化
C)避免滥用goto语句D)模块设计要保证高耦合、高内聚
(2)从工程管理角度,软件设计一般分为两步完成,它们是
A)概要设计与详细设计B)数据设计与接口设计
C)软件结构设计与数据设计 D)过程设计与数据设计
(3)下列选项中不属于软件生命周期开发阶段任务的是
A)软件测试B)概要设计 C)软件维护 D)详细设计
(4)在数据库系统中,用户所见的数据模式为
A)概念模式B)外模式C)内模式D)物理模式
(5)数据库设计的四个阶段是:需求分析、概念设计、逻辑设计和A)编码设计B)测试阶段C)运行阶段 D)物理设计
(6)设有如下三个关系表
R S T
下列操作中正确的是
A)T=R∩S B)T=R∪S
C)T=R×S D)T=R/S
(7)下列叙述中正确的是
A)一个算法的空间复杂度大,则其时间复杂度也必定大
B)一个算法的空间复杂度大,则其时间复杂度必定小
C)一个算法的时间复杂度大,则其空间复杂度必定小
D)上述三种说法都不对
(8)在长度为64的有序线性表中进行顺序查,最坏情况下需要比较的次数为A)63 B)64 C)6 D)7
(9)数据库技术的根本目标是要解决数据的
A)存储问题 B)共享问题 C)安全问题 D)保护问题
(10)对下列二叉树
进行中序遍历的结果是
A)ACBDFEG B)ACBDFGE C)ABDCGEF D)FCADBEG
(11)下列叙述中错误的是
A)一个C语言程序只能实现一种算法
B)C程序可以由多个程序文件组成
C)C程序可以由一个或多个函数组成
D)一个C函数可以单独作为一个C程序文件存在
(12)下列叙述中正确的是
A)每个C程序文件中都必须要有一个main()函数
B)在C程序中main()函数的位置是固定的
C)C程序中所有函数之间都可以相互调用,与函数所在位置无关
D)在C程序的函数中不能定义另一个函数
(13)下列定义变量的语句中错误的是
A)int _int; B)double int_; C)char For; D)float US$;
(14)若变量x、y已正确定义并赋值,以下符合C语言语法的表达式是A)++x,y=x-- B)x+1=y C)x=x+10=x+y D)double(x)/10 (15)以下关于逻辑运算符两侧运算对象的叙述中正确的是
A)只能是整数0或1 B)只能是整数0或非0整数
C)可以是结构体类型的数据 D)可以是任意合法的表达式
(16)若有定义int x,y; 并已正确给变量赋值,则以下选项中与表达式(x-y)(x++) : (y++)中的条件表达式(x-y) 等价的是
A)(x-y>0) B)(x-y<0) C)(x-y<0||x-y>0) D)(x-y==0) (17)有以下程序计算机二级考c语言吗
main()
{ int x, y, z;
x=y=1;
z=x++,y++,++y;
printf("%d,%d,%d\n",x,y,z);
}
程序运行后的输出结果是
A)2,3,3 B)2,3,2 C)2,3,1 D)2,2,1
(18)设有定义:int a; float b; 执行 scanf("%2d%f",&a,&b); 语句时,若从键盘输入876 <回车>,a和b的值分别是
A)876和 B)87和
C)87和 D)76和
(19)有以下程序
main()
{ int a=0, b=0;
a=10; /* 给a赋值
b=20; 给b赋值 */
printf("a+b=%d\n",a+b); /* 输出计算结果 */
}
程序运行后的输出结果是
A)a+b=10 B)a+b=30 C)30 D)出错(20)在嵌套使用if语句时,C语言规定else总是A)和之前与其具有相同缩进位置的if配对
B)和之前与其最近的if配对
C)和之前与其最近的且不带else的if配对
D)和之前的第一个if配对
(21)下列叙述中正确的是
A)break语句只能用于switch语句
B)在switch语句中必须使用default
C)break语句必须与switch语句中的case配对使用
D)在switch语句中,不一定使用break语句
(22)有以下程序
main()
{ int k=5;
while(--k) printf("%d",k -= 3);
printf("\n");
}
执行后的输出结果是
A)1 B)2 C)4 D)死循环(23)有以下程序
main()
{ int i;
for(i=1; i<=40; i++)
{ if(i++%5==0)
if(++i%8==0) printf("%d ",i);
}
printf("\n");
}
执行后的输出结果是
A)5 B)24 C)32 D)40
(24)以下选项中,值为1的表达式是
A)1 –'0' B)1 - '\0' C)'1' -0 D)'\0' - '0' (25)有以下程序
fun(int x, int y){ return (x+y); }
main()
{ int a=1, b=2, c=3, sum;
sum=fun((a++,b++,a+b),c++);
printf("%d\n",sum);
}
执行后的输出结果是
A)6 B)7 C)8 D)9
(26)有以下程序
main()
{ char s[]="abcde";
s+=2;
printf("%d\n",s[0]);
}
执行后的结果是
A)输出字符a的ASCII码B)输出字符c的ASCII码C)输出字符c D)程序出错
(27)有以下程序
fun(int x, int y)

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。