【计算机类职业资格】全国计算机等级考试二级C语言真题2005年4月及答案解析.doc
《【计算机类职业资格】全国计算机等级考试二级C语言真题2005年4月及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】全国计算机等级考试二级C语言真题2005年4月及答案解析.doc(19页珍藏版)》请在麦多课文档分享上搜索。
1、全国计算机等级考试二级 C 语言真题 2005 年 4 月及答案解析(总分:86.00,做题时间:90 分钟)一、B选择题/B(总题数:50,分数:50.00)1.数据的存储结构是指 _。(分数:1.00)A.存储在外存中的数据B.数据所占的存储空间量C.数据在计算机中的顺序存储方式D.数据的逻辑结构在计算机中的表示2.下列关于栈的描述中错误的是 _。(分数:1.00)A.栈是先进后出的线性表B.栈只能顺序存储C.栈具有记忆作用D.对栈的插入与删除操作中,不需要改变栈底指针3.对于长度为 n 的线性表,在最坏情况下,下列各排序法所对应的比较次数中正确的是 _。(分数:1.00)A.冒泡排序为
2、n/2B.冒泡排序为 nC.快速排序为 nD.快速排序为 n(n-1)/24.对长度为 n 的线性表进行顺序查找,在最坏情况下所需要的比较次数为 _。(分数:1.00)A.log2nB.n/2C.nD.n+15.下列对于线性链表的描述中正确的是 _。(分数:1.00)A.存储空间不一定是连续,且各元素的存储顺序是任意的B.存储空间不一定是连续,且前件元素一定存储在后件元素的前面C.存储空间必须连续,且前件元素一定存储在后件元素的前面D.存储空间必须连续,且各元素的存储顺序是任意的6.下列对于软件测试的描述中正确的是 _。(分数:1.00)A.软件测试的目的是证明程序是否正确B.软件测试的目的是
3、使程序运行结果正确C.软件测试的目的是尽可能多地发现程序中的错误D.软件测试的目的是使程序符合结构化原则7.为了使模块尽可能独立,要求 _。(分数:1.00)A.模块的内聚程度要尽量高,且各模块间的耦合程度要尽量强B.模块的内聚程度要尽量高,且各模块间的耦合程度要尽量弱C.模块的内聚程度要尽量低,且各模块间的耦合程度要尽量弱D.模块的内聚程度要尽量低,且各模块间的耦合程度要尽量强8.下列描述中正确的是 _。(分数:1.00)A.程序就是软件B.软件开发不受计算机系统的限制C.软件既是逻辑实体,又是物理实体D.软件是程序、数据与相关文档的集合9.数据独立性是数据库技术的重要特点之一,所谓数据独立
4、性是指 _。(分数:1.00)A.数据与程序独立存放B.不同的数据被存放在不同的文件中C.不同的数据只能被对应的应用程序所使用D.以上三种说法都不对10.用树形结构表示实体之间联系的模型是 _。(分数:1.00)A.关系模型B.网状模型C.层次模型D.以上三个都是11.算法具有五个特性,以下选项中不属于算法特性的是 _。(分数:1.00)A.有穷性B.简洁性C.可行性D.确定性12.以下选项中可作为 C 语言合法常量的是 _。(分数:1.00)A.-80B.-080C.-8e1.0D.-80Oe13.以下叙述中正确的是 _。(分数:1.00)A.用 C 程序实现的算法必须要有输入和输出操作B.
5、用 C 程序实现的算法可以没有输出但必须要输入C.用 C 程序实现的算法可以没有输入但必须要有输出D.用 C 程序实现的算法可以既没有输入也没有输出14.以下不能定义为用户标识符的是 _。(分数:1.00)A.MainB.0C.intD.sizeof15.以下选项中不能作为合法常量的是 _。(分数:1.00)A.1.234e04B.1.234e0.4C.1.234e+4D.1.234e016.数字字符 0 的 ASC值为 48,若有以下程序 main() char a=1,b=2; printf(“%c“,b+); printf (“%d/n“,b-a); 程序运行后的输出结果是 _。(分数:
6、1.00)A.32B.502C.22D.2,5017.有以下程序: main() int m=12,n=34; printf(“%d%d“,m+,+n); printf(“%d%d/n“,n+,+m); 程序运行后的输出结果是 _。(分数:1.00)A.12353514B.12353513C.12343514D.1234351318.有定义语句 int b;char c10;,则正确的输入语句是 _。(分数:1.00)A.scallf(“%d%s“,B.scallf(“%d %s“,C.scanf(“%d %s“,b,D.scanf(“%d%s“,b, printf(“%d%d%/n“,m,n
7、,p); 若想从键盘上输入数据,使变量 m 中的值为 123,n 中的值为 456;p 中的值为 789,则正确的输入是 _ 。(分数:1.00)A.m=123 n=456p=789B.m=123 n=456 p=789C.m=123,n=456,p=789D.123 456 78920.有以下程序: main() int a,b,d=25; a=d/10%9; b=a printf(“%d,%d/n“,a,b); 程序运行后的输出结果是 _。(分数:1.00)A.6,1B.2,1C.6,0D.2,021.有以下程序: main() int i=1,j=2,k=3; if(i+=1 程序运行后
8、的输出结果是 _。(分数:1.00)A.22B.76C.72D.6225.以下能正确定义一维数组的选项是 _。(分数:1.00)A.int a5=0,1,2,3,4,5;B.char a=0,1,2,3,4,5;C.char a=A,B,C;D.int a5=“0123“;26.有以下程序 int f1 (int x,inty)return xy?x:y; int f2(int x,int y)return xy?y:x; main() int a=4,b=3,c=5,d=2,e,f,g; e=f2(f1(a,b),f1(c,d);f=f1(f2(a,b),f2(c,d); g=a+b+c+d
9、-e-f; pintf(“%d,%d,%d/n“,e,f,g); 程序运行后的输出结果是 _。(分数:1.00)A.4,3,7B.3,4,7C.52,7D.2,5,727.已有定义:char a=“xyz“,b=x,y,z;,以下叙述中正确的是 _。(分数:1.00)A.数组 a 和 b 的长度相同B.a 数组长度小于 b 数组长度C.a 数组长度大于 b 数组长度D.上述说法都不对28.有以下程序: void f(int*x,int*y) int t; t=*x;*x=*y;*y=t; main() int a 8=1, 2,3,4,5, 6, 7,8,i,*p,*q; p=a;q= whi
10、le(pq) f(p,q);p+;q-; for(i=0;i8;i+)printf(“%d,“ai); 程序运行后的输出结果是 _。(分数:1.00)A.823,4,5,6,7,1,B.5,6,7,8,12,3,4,C.1,2,3,4,5,6,7,8,D.8,7,6,5,4,3,2,1,29.有以下程序: main() int a3,3*p,i; p= for(i=m;i=n;i-)ai+1=ai main() int i, aN=1,2,3,4,5,6,7,8,9,10; fun(a,2,9); for(i=0;i5;i+)printf(“%d“,ai); 程序运行后的输出结果是 _。(分数
11、:1.00)A.10234B.12344C.12334D.1223432.有以下程序 main() int a 32=0,(* ptr 2,i,j; for(i=0;i2;i+)ptr=a+i;scanf(“%d“,ptr);pb+; for(i=0;i3;i+) for(j=0;j2;j+)printf(“%2d“,aij);printf(“/n“); 若运行时输入:123回车,则输出结果是 _。(分数:1.00)A.产生错误信息B.10C.12D.10 20 30 20 00 00 3033.有以下程序: prt(int*m,int n) int i; for(i=0;in;i+)mi)+
12、; main() int a=1,2,3,4,5,i; prt(a,5); for(i=0;i5;i+) printf(“%d,“,ai); 程序运行后的输出结果是 _。(分数:1.00)A.1,2,3,4,5,B.2,3,4,5,6,C.3,4,5,6,7,D.2,3,4,5,1,34.有以下程序: main() int a=1,2,3,4,5,6,7,8,9,0,*p; for(p=a;pa+10,p+)printf(“%d,“,*p); 程序运行后的输出结果是 _。(分数:1.00)A.1,2,3,4,5,6,7,8,9,0,B.2,3,4,5,6,7,8,9,10,1,C.0,1,2,
13、3,4,5,6,7,8,9,D.1,1,1,1,1,1,1,1,1,1,35.有以下程序: #define P3 void F(int x)return(P*x*x); main() printf(“%d/n“,F(3+5); 程序运行后的输出结果是 _。(分数:1.00)A.192B.29C.25D.编译出错36.有以下程序 main() int c=35;printf(“%d/n“,cchar b;double c;data; 以下叙述中错误的是 _。(分数:1.00)A.data 的每个成员起始地址都相同B.变量 data 所占的内存字节数与成员 c 所占字节数相等C.程序段 data=
14、5;printf(“%f/n“,dat;输出结果为 5.000000D.data 可以作为函数的实参39.以下语句或语句组中,能正确进行字符串赋值的是 _。(分数:1.00)A.char*sp;*sp=“right!“;B.char s10;s=“right!“;C.char s 10;*s=“right!“;D.char*sp=“right!“;40.设有如下说明 typedef struct ST long a;int b;char c2;NEW; 则下面叙述中正确的是 _。(分数:1.00)A.以上的说明形式非法B.ST 是一个结构体类型C.NEW 是一个结构体类型D.NEW 是一个结构
15、体变量41.有以下程序: main() int a=1,b; for(b=1;b=10;b+) if(a=8)break; if(a%21)a+=5;continue; a-=3; printf(“%d/n“,b); 程序运行后的输出结果是 _。(分数:1.00)A.3B.4C.5D.642.有以下程序: main() char s=“159“,*p; p=s; printf(“%c“,*p+);printf(“%c“,*p+); 程序运行后的输出结果是 _。(分数:1.00)A.15B.16C.12D.5943.有以下函数: fun(char*a,char*b) while(*a!=/0 b
16、+; return(*a-*b); 该函数的功能是 _。(分数:1.00)A.计算 a 和 b 所指字符串的长度之差B.将 b 所指字符串连接到 a 所指字符串中C.将 b 所指字符串连接到 a 所指字符串后面D.比较 a 和 b 所指字符串的大小44.有以下程序: main() int num44=1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,ij; for(i=0;i4;i+) for(j=0;j=i;j+) printf(“%4c“,); for(j=_;j4;j+) printf(“%4d“,numij); printf(“/n“); 若要按以下形式输出
17、数组右上半三角 1 2 3 4 6 7 8 11 12 16 则在程序下划线处应填入的是 _ 。(分数:1.00)A.i-1B.iC.i+1D.4-i45.有以下程序: point(char *p)p+=3; main() char b4=a,b,c,d,*p=b; point(p);printf(“%c/n“,*p); 程序运行后的输出结果是 _。(分数:1.00)A.aB.bC.cD.d46.程序中若有如下说明和定义语句 char fun(char*); main() char*s=“one“,a5=0,(*f1)()=fun,ch; . 以下选项中对函数 Fun 的正确调用语句是 _。(
18、分数:1.00)A.(*f1)(;B.*f1(*;C.fun(struct node *next; *p,*q,*r, (分数:1.00)A.P-next=q-next;B.p-next=(p-next-next;C.p-next=rD.p=q-next;48.以下对结构体类型变量 td 的定义中,错误的是 _。(分数:1.00)A.typedef struct aaB.struct aa int n; int n; float m; float m; AA; td; AAtd; struct aa td;C.structD.struct int n; int n; float m; floa
19、t m; aa; td; struct aa td;49.以下与函数 fseek(fp,OL,SEEK_SET)有相同作用的是 _。(分数:1.00)A.feof(fB.ftell(fC.fgetc(fD.rewind(f50.有以下程序 #includestdio.h void WriteStr(char*fn,char*str) FILE*fp; fp=fopen(fn“w“);fputs(str,fp);fclose(fp); main() WriteStr(“t1.dat“start“); WriteStr(“t1,dat“,“end“); 程序运行后,文件 t1.dat 中的内容是
20、_。(分数:1.00)A.startB.endC.startendD.endrt二、B填空题/B(总题数:18,分数:36.00)51.某二叉树中度为 2 的结点有 18 个,则该二叉树中有 【1】 个叶子结点。(分数:2.00)填空项 1:_52.在面向对象方法中,类的实例称为 【2】 。(分数:2.00)填空项 1:_53.诊断和改正程序中错误的工作通常称为 【3】 。(分数:2.00)填空项 1:_54.在关系数据库中,把数据表示成二维表,每一个二:维表称为 【4】 。(分数:2.00)填空项 1:_55.问题处理方案的正确而完整的描述称为 【5】 。(分数:2.00)填空项 1:_56
21、.以下程序运行时,若从键盘输入:10 20 30回车,输出的结果是U 【6】 /U。 #includestdio.h main() int i=0,j=0,k=0; scanf(“%d%*d%d“, printf(“%d%d%d/n“,i,j,k); (分数:2.00)填空项 1:_57.以下程序运行后的输出结果是U 【7】 /U。 #define S(x)4*x*x+1 main() int i=6,j=8; printf(“%d/n“,S(i+j); (分数:2.00)填空项 1:_58.以下程序运行后的输出结果是U 【8】 /U。 main() int a=3,b=4,c=5,t=99;
22、 if(baa;a=c;c=t if(aca=t; printf(“%d%d%d/n“,a,b,c); (分数:2.00)填空项 1:_59.以下程序运行后的输出结果是U 【9】 /U。 main() int a,b,c; a=10;b=20;c=(a%b1)|(a/b1; printf(“%d %d%d/n“,a,b,c); (分数:2.00)填空项 1:_60.以下程序运行后的输出结果是U 【10】 /U。 main() char c1,c2; for(c1=O,c2=9;c1c2;c1+,c2-) printf(“%c%c“,c1,c2); printf(“/n“); (分数:2.00)
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 全国 计算机等级考试 二级 语言 2005 答案 解析 DOC
