2006年4月全国计算机等级考试二级C语言笔试试题及解析

上传人:w**** 文档编号:39546322 上传时间:2018-05-17 格式:DOC 页数:23 大小:137.50KB
返回 下载 相关 举报
2006年4月全国计算机等级考试二级C语言笔试试题及解析_第1页
第1页 / 共23页
2006年4月全国计算机等级考试二级C语言笔试试题及解析_第2页
第2页 / 共23页
2006年4月全国计算机等级考试二级C语言笔试试题及解析_第3页
第3页 / 共23页
2006年4月全国计算机等级考试二级C语言笔试试题及解析_第4页
第4页 / 共23页
2006年4月全国计算机等级考试二级C语言笔试试题及解析_第5页
第5页 / 共23页
点击查看更多>>
资源描述

《2006年4月全国计算机等级考试二级C语言笔试试题及解析》由会员分享,可在线阅读,更多相关《2006年4月全国计算机等级考试二级C语言笔试试题及解析(23页珍藏版)》请在金锄头文库上搜索。

1、12006年年4月全国计算机等级考试二级月全国计算机等级考试二级C语言笔试试卷语言笔试试卷一、选择题一、选择题( (1)-(10)每题每题2分分,(11)-(50)每题每题1分分,共共60分分)下列各题四个选项中,只有一个选项是正确的,请选出正确答案下列各题四个选项中,只有一个选项是正确的,请选出正确答案(1)下列选项中不属于结构化程序设计方法的是0001A)自顶向下 B)逐步求精C)模块化 D)可复用(2)两个或两个以上模块之间关联的紧密程度称为1000A)耦合度 B)内聚度C)复杂度 D)数据传输特性(3)下列叙述中正确的是0001A)软件测试应该由程序开发者来完成B)程序经调试后一般不需

2、要再测试C)软件维护只包括对程序代码的维护D)以上三种说法都不对(4)按照“后进先出”的原则组织数据的数据结构是0100A)队列 B)栈C)双向链表 D)二叉树(5)下列叙述中正确的是1000A)线性链表是线性表的链式存储结构B)栈与队列是非线性结构C)双向链表是非线性结构D)只有根结点的二叉树是线性结构(6)对如下二叉树00012进行后序遍历的结果为A)ABCDEF B)DBEAFCC)ABDECF D)DEBFCA(7)在深度为7的满二叉树中,叶子结点的个数为0010A)32 B)31 C)64 D)63(8)“商品”与“顾客”两个实体集之间的联系一般是0001A)一对一 B)一对多C)多

3、对一 D)多对多(9)在E-R图中,用来表示实体的图形是0100A)矩形 B)椭圆形 C)菱形 D)三角形(10)数据库DB、数据库系统DBS、数据库管理系统DBMS之间的关系是0010A)DB包含DBS和DBMS B)DBMS包含DB和DBSC)DBS包含DB和DBMS D)没有任何关系(11)以下不合法的用户标识符是0100A)j2_Key B)Double C)4d D)_8_(12) 以下不合法的数值常量是0010A)011 B)1e1 C)8.0E0.5 D)0xabcd(13) 以下不合法的字符常量是1000A)018 B)“ C) D)xcc(14)表达式3.6-5/2+1.2+

4、5%2的值是0001A)4.3 B)4.8 C)3.3 D)3.8(15)以下能正确定义字符串的语句是0001A)char str=064; B) char str=“x43“;C) char str=“; D) char str=“;0“;(16) 以下数组定义中错误的是0100A)int x3=0; B) int x23=1,2,3,4,5,6;C) int x3= 1,2,3,4,5,6; D) int x23=1,2,3,4,5,6;(17) 若要求从键盘读入含有空格字符的字符串,应使用函数01003A)getc() B)gets() C)getchar() D)scanf() (18

5、)以下四个程序中,完全正确的是0100A)#includestdio.h B)#includestdio.hmain(); main()/*programming*/ /*/programming/*/printf(“programming!n“); printf(“programming!n“);C) #includestdio.hD) includestdio.hmain() main() /*/*programming*/*/ /*programming*/ printf(“programming!n“); printf(“programming!n“);(19) 若有定义: flot

6、x=1.5; int a=1,b=3,c=2; 则正确的switch语句是0010A) switch(x) B) switch(int)x); case 1.0: printf(“*n“); case 1: printf(“*n“);case 2.0: printf(“*n“);case 2: printf(“*n“);C) switch(a+b) D) switch(a+b) case 1: printf(“*n“); case 1: printf(“*n“);case 2+1: printf(“*n“);case c: printf(“*n“);(20) 若各选项中所用变量已正确定义,函数

7、fun中通过return语句返回一个函数值, 以下选项中错误的程序是1000A) main() B) float fun(int a,int b)x=fun(2,10); main()float fun(int a,int b) x=fun(I,j); C) float fun(int, int); D) main()main() float fun(int i,int j);x=fun(2,10); x=fun(i,j); float fun(int a,int b) float fun(int a,int b) (21) 在以下给出的表达式中,与while(E)不等价的表达式是0010A)

8、(!E=0) B)(E0Enext=r-next;p-next=r,r-next=q;Adata nextdata nextBdata nextdata nextCdata nextdata nextpqr5B)p-next=r;q-next=r-next;r-next=q;C)q-next=r-next;r-next=q;p-next=r; D)r-next=q;p-next=r;q-next=r-next;(26)有以下程序段0010struct stint x; int *y;*pt;int a=1,2,b=3,4;struct st c2=10,a,20,b;pt=c;以下选项中表达式

9、的值为11的是:A)*pt-y B)pt-x C)+pt-x D)(pt+)-x(27)设fp为指向某二进制文件的指针,且已读到此文件末尾,则函数 feof(fp)的返回值为:0100A)EOF B)非0值 C)0 D)NULL(28)设有以下语句0001int a=1,b=2,c;c=a(bmain()char c1,c2,c3,c4,c5,c6;scanf(“%c%c%c%c“,c5=getchar(); c6=getchar();putchar(c1); putchar(c2);6printf(“程序运行后,若从键盘输入(从第1列开始)12345678则输出结果是A)1267 B)125

10、6 C)1278 D)1245(30)有以下程序0100main()int y=10;while(y-); printf(“y=%dn“,y);程序执行后的输出结果是A)y=0 B)y=-1 C)y=1 D)while构成无限循环(31)有以下程序0001main()int a=0,b=0,c=0,d=0;if(a=1) b=1;c=2;else d=3;printf(“%d,%d,%d,%dn“,a,b,c,d);程序输出A)0,1,2,0 B)0,0,0,3 C)1,1,2,0 D)编译有错7(32)有以下程序0100main()int i,j,x=0;for(i=0;imain()FIL

11、E *fp;char *s1=“Fortran“,*s2=“Basic“;if(fp=fopen(“test.txt“,“wb“)=NULL)printf(“Cant open test.txt filen“);exit(1);fwrite(s1,7,1,fp); /*把从地址s1开始的7个字符写到fp所指文件中 */fseek(fP,OL,SEEK_SET);/*文件位置指针移到文件开头*/rwrite(s2,5,1,fp);fclose(fp);A)Basican B)BasicFortran C)Basic D)FortranBasic(44)以下叙述中错误的是:0001A)C语言源程序

12、经编译后生成后缀为.obj的目标程序B)C程序经过编译、连接步骤之后才能形成一个真正可执行的二进制机器指令 文件C)用C语言编写的程序称为源程序,它以ASCII代码形式存放在一个文本文件 中13D)C语言中的每条可执行语句和非执行语句最终都将被转换成二进制的机器指 令(45)以下叙述中错误的是:0100A)算法正确的程序最终一定会结束B)算法正确的程序可以有零个输出C)算法正确的程序可以有零个输入D)算法正确的程序对于相同的输入一定有相同的结果(46)以下叙述中错误的是:0001A)C程序必须由一个或一个以上的函数组成B)函数调用可以作为一个独立的语句存在C)若函数有返回值,必须通过retur

13、n语句返回D)函数形参的值也可以传回给对应的实参(47)设有以下定义和语句:1000char str20=“Program“,*pp=str;则以下叙述中正确的是:A)*p与str0中的值相等B)str与p的类型完全相同C)str数组长度和p所指向的字符串长度相等D)数组str中存放的内容和指针变量p中存放的内容相同(48)以下叙述中错误的是:0001A)C程序中的#include和#define行均不是C语句B)除逗号运算符外,赋值运算符的优先级最低C)C程序中,j+;是赋值语句D)C程序中,+、-、*、/、%是算术运算符,可用于整形和实型数的运算(49)以下叙述中正确的是:0100A)预处理命令行必须位于C源程序的起始位置B)在C语言中,预处理命令行都以“#”开头14C)每个C程序必须在开头包含预处理命令行:# includeD)C语言的预处理不能实现宏定义和条件编译的功能(50)以下叙述中错误的是:1000A)可以通过typedef增加新的类型B)可以用typedef将已存在的类型用一个新的名字来代表C)用typedef定义新的类型名后,原有类型名仍有效D)用typedef可以为各种类型起别名,钽不能为变量起别名二、填空题(每空二、填空题(每空2 2分,共分,共4040分)分)(1)对长度为1

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 资格认证/考试 > 其它考试类文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号