【计算机类职业资格】二级C语言笔试-396及答案解析.doc
《【计算机类职业资格】二级C语言笔试-396及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C语言笔试-396及答案解析.doc(32页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C语言笔试-396 及答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:40,分数:40.00)1.下列描述中正确的是A) 算法是指对解题方案准确而完整的描述B) 算法的有穷性是指算法程序的长度是有限的C) 算法是否有效与拥有的情报无关D) 算法的基本特征有可行性、确定性和有穷性(分数:1.00)A.B.C.D.2.下列数据结构中属于非线性结构的是A) 队列 B) 线性表 C) 二叉树 D) 栈(分数:1.00)A.B.C.D.3.4个元素 A、B、C、D 依次入栈,入栈过程中允许栈顶元素出栈,假设某一时刻栈的状态是 C(栈顶)、B、A(栈底),则不可能的出栈顺序是
2、A) D、C、B、A B) C、B、D、AC) C、A、D、B D) C、D、B、A(分数:1.00)A.B.C.D.4.下列叙述中正确的是A) 顺序存储结构的存储空间一定是连续的,链式存储结构的存储空间不一定是连续的B) 顺序存储结构只针对线性结构,链式存储结构只针对非线性结构C) 顺序存储结构能存储有序表,链式存储结构不能存储有序表D) 链式存储结构比顺序存储结构节省存储空间(分数:1.00)A.B.C.D.5.下面概念中,不属于面向对象方法的是A) 对象 B) 继承 C) 类 D) 过程调用(分数:1.00)A.B.C.D.6.下列选项中属于软件生命周期开发阶段任务的是A) 可行性研究
3、B) 需求分析 C) 详细设计 D) 软件维护(分数:1.00)A.B.C.D.7.软件设计中衡量模块独立性的度量标准是A) 抽象和信息隐蔽B) 局部化和封装化C) 内聚性和耦合性D) 激活机制和控制方法(分数:1.00)A.B.C.D.8.下列不属于过程设计工具中图形工具的是A) N-S B) PAD C) 程序流程图 D) PDL(分数:1.00)A.B.C.D.9.下列叙述中错误的是A) 数据库管理系统是数据库的核心B) 数据库系统由数据库、数据库管理系统、数据库管理员 3部分组成C) 数据共享最好的是数据库系统阶段D) 数据库中的数据独立于应用程序而不依赖于应用程序(分数:1.00)A
4、.B.C.D.10.如图所示,两个关系 R1和 R2:(分数:1.00)A.B.C.D.11.以下可用作 C语言用户标识符的是A) void,define,WORD B) a3_b3,_123,IFC) FOR,-abc,Case D) 2a,Do,Sizeof(分数:1.00)A.B.C.D.12.以下叙述中错误的是A) C语言的可执行程序是由一系列机器指令构成的B) 用 C语言编写的源程序不能直接在计算机上运行C) 通过编译得到的二进制目标程序需要连接才可以运行D) 在没有安装 C语言集成开发环境的机器上不能运行 C源程序生成的.exe 文件(分数:1.00)A.B.C.D.13.以下 4
5、个选项中,不能看作一条语句的是A) ; B) a=5,b=2.5,c=3.6;C) if(b!=5)x=2;y=6; D) return j;(分数:1.00)A.B.C.D.14.以下不能正确计算代数式 (分数:1.00)A.B.C.D.15.若有说明:int *p,m=5,n;,以下正确的程序段是A) p= B) p=*p=n; D) p=*p=m;(分数:1.00)A.B.C.D.16.以下程序的输出结果是main()int a=20;printf(“%d,%o,%x/n“,a,a,a);A) 20, 024, 0x14 B) 20, 24, 14C) 20, 0x14, 024 D)
6、20, 20, 20(分数:1.00)A.B.C.D.17.下面程序的运行结果是main()int y=5,x=14; y=(x=3*y,x+6),x-1);printf(“x=%d,y=%d“,x,y);A) x=27,y=27 B) x=12,y=13C) x=15,y=14 D) x=y=27(分数:1.00)A.B.C.D.18.设变量 x和 y均已正确定义并赋值。以下 if语句中,在编译时将产生错误信息的是A) if(x+); B) if(xyC) if(x0) x- D) if(y0) ;else y+; else x+;(分数:1.00)A.B.C.D.19.请阅读以下程序:#i
7、nclude stdio.hmain()int x=1,y=0,a=0,b=0;switch(x)case 1:switch(y)case 0:a+;break;case 2:a+,b+;break;printf(“a=%d,b=%d/n“,a,b);上面程序运行后的输出结果是A) a=2,b=1 B) a=2,b=1 C) a=1,b=0 D) a=2,b=2(分数:1.00)A.B.C.D.20.以下叙述中正确的是A) 调用 printf函数时,必须要有输出项B) 使用 putchar函数时,必须在之前包含头文件 stdio.hC) 在 C语言中,整数可以用十二进制、八进制或十六进制的形式
8、输出D) 调用 getchar函数读入字符时,可以从键盘上输入字符所对应的 ASC码(分数:1.00)A.B.C.D.21.有以下语句:char b8;int c;,则正确的输入语句是A) scanf(“%s%d“, B) scanf(“%s%d“,C) scanf(“%s%d“,b,c); D) scanf(“%s%d“,b,(分数:1.00)A.B.C.D.22.有以下程序:#include stdio.hmain()int a=1,2,3,4,y,*p=-p; y=*p;printf(“y=%d/n“,y);程序的运行结果是A) y=0 B) y=1 C) y=2 D) y=3(分数:1
9、.00)A.B.C.D.23.若有以下说明和语句,对 c数组元素正确引用是int c45,(*cp)5;cp=c;A) cp+1 B) *(cp+3) C) *(cp+1)+3 D) *(*cp+2)(分数:1.00)A.B.C.D.24.有以下程序:#include string.hmain()char p20=a,b,c,d,q=“abc“,r=“abcde“;strcat(p,r);strcpy(p+strlen(q),q);printf(“%d/n“,strlen(p);程序运行后的输出结果是A) 9 B) 6 C) 11 D) 7(分数:1.00)A.B.C.D.25.以下程序段中的
10、变量已正确定义:for(i=0;i4;i+,i+)for(k=1;k3;k+);printf(“*“);程序段的输出结果是A) * B) * C) * D) *(分数:1.00)A.B.C.D.26.以下程序运行后的输出结果是main()char ch=“uvwxyz“,*pc;pc=ch;printf(“%c/n“,*(pc+5);A) z B) 0 C) 元素 ch5地址 D) 字符 y的地址(分数:1.00)A.B.C.D.27.有以下程序:#include stdio.hvoid fun(char *p)+p;printf(“%s/n“,*p);main()char *a=“Morni
11、ng“,“Afternoon“,“Evening“,“Night“;fun(a);程序运行后的输出结果是:A) Afternoon B) fternoon C) Morning D) orning(分数:1.00)A.B.C.D.28.以下程序运行后的输出结果是void f(int n,int *r)int r1=0;if(n%3=0) r1=n/3;else if(n%5=0) r1=n/5;else f(-n,f(m,for(i=0;i2;i+)ptr=a+i; scanf(“%d“,ptr);ptr+;for(i=0;i3;i+)for(j=0;j2;j+) printf(“%2d“,a
12、ij);printf(“/n“);若运行时输入:1 2 3回车,则输出结果是A) 编译错误 2 00 0B) 1 02 00 0C) 1 22 03 0D) 1 0(分数:1.00)A.B.C.D.30.有以下程序:#include stdio.hvoid fun(char *s)while(*s)if(*s%2=0)printf(“%c“,*s);s+;main()char a=“good“;fun(a);printf(“/n“);注意:字母 a的 ASC码值为 97,程序运行后的输出结果是A) d B) go C) god D) good(分数:1.00)A.B.C.D.31.有以下程序:
13、main()int i,s=0,t=1,2,3,4,5,6,7,8,9;for(i=0;19;i+=2) s+=*(t+i);printf(“%d/n“,s);程序执行后的输出结果是A) 45 B) 20 C) 25 D) 36(分数:1.00)A.B.C.D.32.当用“#define F 37.5f”定义后,下列叙述正确的是A) F是 float型数 B) F 是 char型数C) F无类型 D) F 是字符串(分数:1.00)A.B.C.D.33.有以下程序(函数 fun只对下标为偶数的元素进行操作):#include stdio.hvoid fun (int *a,int n)int
14、i,j ,k,t;for(i=0;in-1;i+=2)k=i;for(j=i;jn;j+=2) if(ajak) k=j;t=ai;ai=ak;ak=t;main()int aa10=1,2,3,4,5,6,7,i;fun(aa,7);for(i=0;i7;i+) printf(“%d,“,aai);printf(“/n“);程序运行后的输出结果是A) 7,2,5,4,3,6,1, B) 1,6,3,4,5,2,7,C) 7,6,5,4,3,2,l, D) 1,7,3,5,6,2,1,(分数:1.00)A.B.C.D.34.阅读下列程序,则运行结果为#include “stdio.h“fun(
15、)static int x=3;x+;return x;main()int i,x;for(i=0;i3;i+)x=fun();printf(“%d/n“,x);A) 3 B) 4 C) 5 D) 6(分数:1.00)A.B.C.D.35.下列程序的输出结果是#include “stdio.h“#define N 3#define M 3void fun(int aMN)printf(“%d/n“,*(a1+2);main()int aMN;int i,j;for(i=0;iM;i+)for(j=0;jN;j+)aij=i+j-(i-j);fun(a);A) 3 B) 4 C) 5 D) 6(
16、分数:1.00)A.B.C.D.36.有以下程序段:typedef struct NODEint num; struct NODE *next;OLD;以下叙述中正确的是A) 以上的说明形式非法 B) NODE 是一个结构体类型C) OLD是一个结构体类型 D) OLD 是一个结构体变量(分数:1.00)A.B.C.D.37.有以下程序:struct Sint n;int a20;void f(int *a, int n)int i;for(i=0;in-1;i+)ai+=i;main()int i;struct S s=10,12,3,1,6,8,7,5,4 ,10,9;f(sa,sn);f
17、or(i=0;is.n;i+)printf(“%d,“,s.ai);程序运行后的输出结果是A) 2,4,3,9,12,12,11,11,18,9, B) 3,4,2,7,9,8,6,5,11,10,C) 2,3,1,6,8,7,5,4,10,9, D) 1,2,3,6,8,7,5,4,10,9,(分数:1.00)A.B.C.D.38.下列选项中,能够满足“若字符串 s1等于字符串 s2,则执行 ST”要求的是A) if(strcmp(s2,s1)=0) ST; B) if(s1=s2) ST;C) if(strcpy(s1,s2)=1) ST; D) if(s1-s2=0) ST;(分数:1.
18、00)A.B.C.D.39.有以下程序:struct STUchar name10;int num; float TotalScore;void f(struct STU *p)struct STU s2=“SunDan“,20044 ,550,“Penghua“,20045 ,537,*q=s;+p;+q;*p=*q;main()struct STU s3=“YangSan“,20041,703,“LiSiGuo“,20042,580;f(s);printf(“%s %d %3.0f/n“,s1.name,s1.num,s1.TotalScore);程序运行后的输出结果是A) SunDan
19、20044 550 B) Penghua 20045 537C) LiSiGuo 20042 580 D) SunDan 20041 703(分数:1.00)A.B.C.D.40.下面程序段的输出为#include “stdio.h“main()printf(“%d/n“,122);A) 0 B) 47 C) 48 D) 24(分数:1.00)A.B.C.D.二、填空题(总题数:15,分数:60.00)41.某二叉树有 6个度为 2的结点以及 4个度为 1的结点,则该二叉树中共有 1 个结点。(分数:4.00)填空项 1:_42.设某循环队列的容量为 60,头指针 front=10(指向队头元
20、素的前一位置),尾指针 rear=29(指向队尾元素),则该循环队列中共有 1 个元素。(分数:4.00)填空项 1:_43.若按功能划分,软件测试的方法通常分为白盒测试法和 1 测试法。(分数:4.00)填空项 1:_44.一个工人可管理多个设备,而一个设备只被一个工人管理,则实体“工人”与实体“设备”之间存在 1的关系。(分数:4.00)填空项 1:_45.数据库设计分为 6个设计阶段:需求分析阶段、 1、逻辑设计阶段、物理设计阶段、实施阶段、运行和维护阶段。(分数:4.00)填空项 1:_46.设变量已正确定义为整型,则表达式 n=i=12,+i,i+的值为 1。(分数:4.00)填空项
21、 1:_47.以下程序运行后的输出结果是_。main()int a=3,b=4,c=5,t=99;if(baa=c;c=t;if(acb=a;a=t;printf(“%d %d %d/n“,a,b,c);(分数:4.00)填空项 1:_48.以下程序的输出结果是_。#include string.hmain()printf(“%d/n“ ,strlen(“IBM/n012/1/“);(分数:4.00)填空项 1:_49.以下程序的输出结果是_。#include stdio.h#include string.hchar* fun( char *t)char *p=t;return(p+strle
22、n(t)/2);main()char *str=“abcdefgh“;str=fun(str);puts(str);(分数:4.00)填空项 1:_50.以下程序的输出结果是_。#include stdio.hmain()int i;for(i=a;if;i+,i+)printf(“%c“,i-a+A);printf(“/n“);(分数:4.00)填空项 1:_51.以下程序的功能是:删去一维数组中所有相同的数,使之只剩一个。数组中的数已按由小到大的顺序排列,函数返回删除后数组中数据的个数。例如,若一维数组中的数据是:2 2 2 3 4 4 5 6 6 6 6 7 7 8 9 9 10 10
23、10删除后,数组中的内容应该是:2 3 4 5 6 7 8 9 10请填空。#include stdio.h#define N 80int fun(int a,int n)int i,j=1;for(i=1;in;i+)if(aj-1!=ai)aj+=ai;_;main()int aN=2,2,2,3,4,4,5,6,6,6,6,7,7,8,9,9,10,10,10,i,n=19;printf(“The original data:/n“);for(i=0;in;i+) printf(“%3d“,ai);n=fun(a,n);printf(“/nThe data after deleted:
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 语言 笔试 396 答案 解析 DOC
