【计算机类职业资格】全国计算机等级考试二级C语言真题2008年9月及答案解析.doc
《【计算机类职业资格】全国计算机等级考试二级C语言真题2008年9月及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】全国计算机等级考试二级C语言真题2008年9月及答案解析.doc(18页珍藏版)》请在麦多课文档分享上搜索。
1、全国计算机等级考试二级 C 语言真题 2008 年 9 月及答案解析(总分:100.00,做题时间:90 分钟)一、B选择题/B(总题数:40,分数:70.00)1.个栈的初始状态为空。现将元素 1、2、3、4、5、A、B、C、D、E 依次入栈,然后再依次出栈则元素出栈的顺序_。(分数:2.00)A.12345ABCDEB.EDCBA54321C.ABCDE12345D.54321EDCBA2.下列叙述中正确的是_。(分数:2.00)A.循环队列中有队头和卧尾两个指针,因此,循环队列是非线牲结构B.在循环队列中,只需要队头指针就能反映队列中元素的动态变化情况C.在循环队列中,只需要队尾指针就能
2、反映队列中元素的动态变化情况D.循环队列中元素的个数是由队头指针和队尾指针共同决定3.在长度为 n 的有序线性表中进行二分查找,最坏情况下需要比较的次数是(分数:2.00)A.O(B.O(n2)C.O(log2D.O(nlog24.下列叙述中正确的是_。(分数:2.00)A.顺序存储结构的存储一定是连续的,链式存储结构的存储空间不一定是连续的B.顺序存储结构只针对线性结构,链式存储结构只针对非线性结构C.顺序存储结构能存储有序表,链式存储结构不能存储有序表D.链式存储结构比顺序存储结构节省存储空间5.数据流图中带有箭头的线段表示的是_。(分数:2.00)A.控制流B.事件驱动C.模块调用D.数
3、据流6.在软件开发中,需求分析阶段可使用的工具是_。(分数:2.00)A.N-S 图B.DFD 图C.PAD 图D.程序流程图7.在面向对象方法中,不属于“对象”基本特点的是_。(分数:2.00)A.一致性B.分类性C.多态性D.标识唯一性8.一间宿舍可住多个学生,则实体宿舍和学生之间的联系是_。(分数:2.00)A.一对一B.一对多C.多对一D.多对多9.在数据管理技术发展的三个阶段中,数据共享最好的是_。(分数:2.00)A.人工管理阶段B.文件系统阶段C.数据库系统阶段D.三个阶段相同10.有三个关系 R、S 和 T 如下: (分数:2.00)A.笛卡尔积B.交C.并D.自然连接11.以
4、下叙述中正确的是_。(分数:1.00)A.C 程序的基本组成单位是语句B.C 程序中的每行只能写一条语句C.简单 C 语句必须以分号结束D.C 语句必须在一行内写完12.计算机能直接执行的程序是_。(分数:1.00)A.源程序B.目标程序C.汇编程序D.可执行程序13.以下选项中不能作为 C 语言合法常量的是_。(分数:1.00)A.cdB.0.1e+6C.“/a“D./01114.以下选项中正确的定义语句是_。(分数:1.00)A.double a;b;B.doubla=b=7;C.double a=7,b=7;D.double,a,b;15.以下不能正确表示代数式 (分数:1.00)A.2
5、*a*b/c/dB.a*b/c/d*2C.a/c/d*b*2D.2*a*b/c*d16.C 源程序中不能表示的数制是_。(分数:1.00)A.二进制B.八进制C.十进制D.十六进制17.若有表达(W)?(-x):(+y),则其中与 W 等价的表达式是_。(分数:1.00)A.w=1B.w=0C.w!=1D.w!=018.执行以下程序段后,W 的值为_。 int w=A,x=14,y=15 w=(xy)(分数:1.00)A.-1B.NULLC.1D.019.若变量已正确定义为 int 型,要通过语句 scanf(“%d,%d,%d“, a=10; b=50; c=30; if(ab)a=b, b
6、=c; c=a; printf(“a=%d b=%d c=%d/n“,a,b,c); 程序的输出结果是_。(分数:1.00)A.a=10 b=50 c=10B.a=10 b=50 c=30C.a=10 b=30 c=10D.a=50 b=30 c=5021.若有定义语句:int m=5,4,3,2,1,i=4;,则下面对 m 数组元素的引用中错误的是_。(分数:2.00)A.m-iB.m2*2C.mm0D.mm22.下面的函数调用语句中,func 函数的实参个数是_。 func(f2(v1,v2),(v3,v4,v5),(v6,max(v7,v8);(分数:2.00)A.3B.4C.5D.82
7、3.若有定义语句:double x5=1.0,2.0,3.0,4.0,5.0,*p=x;则错误引用 x 数组元素的是_。(分数:2.00)A.*pB.x5C.*(p+1)D.*x24.若有定义语句:char s10=“1234567/0/0“;,则 strlen(s)的值是_。(分数:2.00)A.7B.8C.9D.1025.以下叙述中错误的是_。(分数:2.00)A.用户定义的函数中可以没有 return 语句B.用户定义的函数中可以有多个 return 语句,以便可以调用一次返回多个函数值C.用户定义的函数中若没有 return 语句,则应当定义函数为 void 类型D.函数的 retur
8、n 语句中可以没有表达式26.以下关于宏的叙述中正确的是_。(分数:2.00)A.宏名必须用大写字母表示B.宏定义必须位于源程序中所有语句之前C.宏替换没有数据类型限制D.宏调用比函数调用耗费时间27.有以下程序#include stdio.hmain() int i,j; for(i=3;i=-1;i-) for(i=1;j=2;j+) printf(“%d“,i+j); printf(“/n“); 程序的运行结果是_。(分数:2.00)A.234 345B.432 543C.23 34 45D.45 34 2328.有以下程序 #include stdio.h mare() int x=1
9、,y=2,z=3; if(xy) if(yz) printf(“%d“,+z); else printf(“%d“,+y); printf(“%d/n“,x+); 程序的运行结果是_。(分数:2.00)A.331B.41C.2D.129.有以下程序 #include stdio.h main() int i=5; do if(i%3=1) if(i%5=2) printf“*%d“,i); break; i+; while(i!=0); printf(“/n“); 程序的运行结果是_。(分数:2.00)A.*7B.*3*5C.*5D.*2*630.有以下程序 #include stdio.h
10、int fun(int a, int b) if(b=0) return a; else return(fun(-a,-b); main() printf(“%d/n“,fun(4,2); 程序的运行结果是_。(分数:2.00)A.1B.2C.3D.431.有以下程序 #include stdio.h #include stdlib.h int fun(int n) int *p; p=(int*)malloc(sizeof(int); *p=n; return *p; int a; a=fun(10); printf(“%d/n“,a+fun(10); 程序的运行结果是_。(分数:2.00)
11、A.0B.10C.20D.出错32.有以下程序 #includestdio.h void fun(int a, int b) int t; t=a; a=b; int c10=1,2,3,4,5,6,7,8,9,0,i; for(i=0;i10;i+=2) fun(ci,ci+1); for(i=0;i10;i+) printf(“%d,“,ci); printf(“/n“); 程序的运行结果是_。(分数:2.00)A.1,2,3,4,5,6.7,8,9,0,B.2,1.4.3.6,5.8,7,0,9,C.0,9,8,7,6,5,4,3,2,1,D.0,1,2,3,4,5,6,7,8,9,33
12、.有以下程序 #include stdio.h struct st int x,y; data2=1,10,2,20; main() struct st *p=data; printf(“%d,“,p-y); printf(“%d/n“,(+p)-x); 程序的运行结果是_。(分数:2.00)A.10,1B.20,1C.10,2D.20,234.有以下程序 #include stdio.h void fun(int a,int n) int i,t; for(i=0;in/2;i+) t=ai; ai=an-1-i; an-1-i=t; main() int k10=1,2,3,4,5,6,7
13、,8,9,10,i; fun(k,5); for(i=2;i8;i+) printf(“%d“,ki); printf(“/n“); 程序的运行结果是_。(分数:2.00)A.345678B.876543C.1098765D.32167835.有以下程序 #include stdio.h #define N 4 void fun(int aN,int b) int i; for(i=0;iN;i+) bi=aii; main() int xN=1,2,3,4,5,6,7,8,9,10 ,YN,i; fun(x,y); for(i=0;iN;i+) printf(“%d,“,yi); print
14、f(“/n“); 程序的运行结果是_。(分数:2.00)A.1,2,3,4,B.1,0,7,0,C.1,4,5,9,D.3,4,8,10,36.有以下程序 #include stdio.h int fun(int (*s)4,int n,int k) int m,i; m=s0kl; for(i=1;in;i+) if(sikm) m=sik; return m; main() int a44=1,2,3,4,11,12,13,14, 21,22,23,24, 31,32,33,34; printf(“%d/n“,fun(a,4,0); 程序的运行结果是_。(分数:2.00)A.4B.34C.
15、31D.3237.有以下程序 #include stdio.h main() struct STUchar name9;char sex;double score2;sturt STU a=“Zhao“ ,m,85.0,90.0,b=“Qian“ ,f,95:0,92.0; b=a; printf(“%s,%c,%2.0f,%2.0f/n“,b.name,b.sex,b.score0,b.score1); 程序的运行结果是_。(分数:2.00)A.Qian,f,95,92B.Qian,85,90C.Zhao,f,95,92D.Zhao,m,85,9038.假定已建立以下链表结构,且指针 p 和
16、 q 已指向如图所示的结点: (分数:2.00)A.(*.next=(*.next; free(;B.p=q-next; free(;C.p=q; free(;D.p-next=q-next; free(;39.有以下程序 #include stdio.h main() char a=4; printf(“%d/n,a=a1); 程序的运行结果是_。(分数:2.00)A.40B.16C.8D.440.有以下程序 #include stdio.h main() FILE*pf, char *s1=“China“,*s2=“Beijing“; pf=fopen(“abc.dat“,“wb+“);
17、fwrite(s2,7,1,pf); rewind(pf); /*文件位置指针回到文件开头*/ fwrite(s1,5,1,pf); fclose(pf); 以上程序执行后 abc.dat 文件的内容是_。(分数:2.00)A.ChinaB.ChinangC.ChinaBeijingD.BeijingChina二、B填空题/B(总题数:13,分数:30.00)41.对下列二叉树进行中序遍历的结果是U 【1】 /U。 (分数:2.00)填空项 1:_42.按照软件测试的一般步骤,集成测试应在U 【2】 /U测试之后进行。(分数:2.00)填空项 1:_43.软件工程三要素包括方法、工具和过程,其
18、中,U 【3】 /U支持软件开发的各个环节的控制和管理。(分数:2.00)填空项 1:_44.数据库设计包括概念设计、U 【4】 /U和物理设计。(分数:2.00)填空项 1:_45.在二维表中,元组的U 【5】 /U不能再分成更小的数据项。(分数:2.00)填空项 1:_46.设变量 a 和 b 已正确定义并赋初值。请写出与 a=a+b 等价的赋值表达式U 【6】 /U。(分数:2.00)填空项 1:_47.若整型变量 a 和 b 中的值分别为 7 和 9,要求按以下格式输出 a 和 b 的值: a=7 b=9 请完成输出语句:printf(“U 【7】 /U“,a,b);。(分数:2.00
19、)填空项 1:_48.以下程序的输出结果是U 【8】 /U。 #includestdio.h main() int i,j,sum; for(i=3;i=-1;i-) (sum=0; for(j=1;j=i;j+) sum+=i*j; printf(“%d/n,sum); (分数:2.00)填空项 1:_49.以下程序的输出结果是U 【9】 /U。 #include stdio.h main() int j,a=1,3,5,7,9,11,13,15,*P=a+5; for(j=3; j;j-) switch(i) case 1: case 2: printf(“%d“,*p+); break;
20、 case 3: printf(“%d“,* (-p); (分数:2.00)填空项 1:_50.以下程序的输出结果是U 【10】 /U。 #include stdio.h #define N 5 int fun(int *s,int a,int n) int j; *s=a j=n; while(a!=sj) j-; return j; main() int sN+1; int k: for(k=1 ;k=N;k+) sk=k+1: print f(“%d/n“,fun(s,4,N); (分数:2.00)填空项 1:_51.以下程序的输出结果是U 【11】 /U。 #include stdio
21、.h int fun(int x) static int t=0; return(t+=x); main() int s,i; for(i=1 ;i=5;i+) s=fun(i); printf(“%d/n“,s);(分数:2.00)填空项 1:_52.以下程序按下现指定的数据给 x 数组的下三角置数,并按如下形式输出,请填空。 4 3 7 2 6 9 1 5 8 10 #include stdio.h main() int x44,n=0,i,j; for(j=0;j4;j+) for(i=3;ij;U 【12】 /U) n+;xij=U 【13】 /U: for(i=0;i4;i+) fo
22、r(j=0;j=i;j+) printf(“%3d“,xij); printf(“/n“); (分数:4.00)填空项 1:_53.以下程序的功能是:通过函数 func 输入字符并统计输入字符的个数。输入时用字符作为输入结束标志。请填空。 #include stdio.h longU 【14】 /U; /*函数说明语句*/ main() long n; n=func(); printf(“n=%1d/n“n); long func() long m; for( m=0;getchar()!=U 【15】 /U; return m; (分数:4.00)填空项 1:_全国计算机等级考试二级 C 语
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 全国 计算机等级考试 二级 语言 2008 答案 解析 DOC
