【计算机类职业资格】二级C语言笔试-205及答案解析.doc
《【计算机类职业资格】二级C语言笔试-205及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C语言笔试-205及答案解析.doc(26页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C语言笔试-205 及答案解析(总分:96.00,做题时间:90 分钟)一、选择题(总题数:40,分数:70.00)1.线性表的顺序存储结构和线性表的链式存储结构分别是( )。(分数:2.00)A.顺序存取的存储结构、顺序存取的存储结构B.随机存取的存储结构、顺序存取的存储结构C.随机存取的存储结构、随机存取的存储结构D.任意存取的存储结构、任意存取的存储结构2.有以下程序:main()char k; int i;for(i=1; i3; i+)scanf(“%c“, k);switch(k)case0: printf(“another/n“);case 1: printf(“numbe
2、r/n“);程序运行时,从键盘输入:01回车,程序执行后的输出结果是( )。(分数:2.00)A.another numberB.another number anotherC.another number numberD.number number3.(2S)以下叙述中错误的是( )。(分数:2.00)A.改变函数形参的值,不会改变对应实参的值B.函数可以返回地址值C.可以给指针变量赋一个整数作为地址值D.当在程序的开头包含头文件 stdio.h时,可以给指针变量赋 NULL4.一个关系中属性个数为 1时,称此关系为( )。(分数:2.00)A.对应关系B.单一关系C.一元关系D.二元关系5
3、.下列有关数据库的描述,正确的是( )。(分数:2.00)A.数据库是一个 DBF文件B.数据库是一个关系C.数据库是一个结构化的数据集合D.数据库是一组文件6.若以下选项中的变量已正确定义,则正确的赋值语句是( )。(分数:2.00)A.xb26.8%3;B.1+2=x2C.x3=0x12;D.x4=1+2=3;7.有以下程序:#include stdio.hvoid fun (int *s, int n1, int n2)int i,j. t;i=n1; j=n2;while (ij)t=si; si=sj; sj=t; i+; j-;main()int a10=1, 2, 3, 4, 5
4、, 6, 7, 8, 9, 0, k;fun(a, 0, 3); fun(a, 4, 9); fun(a, 0, 9);for(k=0; k10; k+) printf(“%d“, ak); printf(“/n“);程序的运行结果是( )。(分数:2.00)A.049382716B.05948372615C.5678901234D.09876512348.以下选项中,当 x为大于 1的奇数时,值为 0的表达式是( )。(分数:2.00)A.x%2=1B.x/2C.x%2!=0D.x%2=09.有以下程序:main()char *p10=“abc“, “aabdfg“, “dcdbe“, “a
5、bbd“, “cd“;printf(“%d/n“. strlen(p4);执行后输出结果是( )。(分数:2.00)A.2B.3C.4D.510.设有定义:int n1=0,n2,*P= n2,*q=n1;,以下赋值语句中与 n2=n1;语句等价的是( )。(分数:2.00)A.*p=*q;B.p=q;C.*p=n1;D.p=*q;11.下面程序段的输出为( )。#include “stdio.h“main()printf(“%d/n“, 122);(分数:1.00)A.0B.47C.48D.2412.一个算法应该具有“确定性”等 5个特性,下面对另外 4个特性的描述中错误的是( )。(分数:
6、1.00)A.有零个或多个输入B.有零个或多个输出C.有穷性D.可行性13.软件开发的结构化生命周期方法将软件生命周期划分成( )。(分数:1.00)A.定义、开发、运行维护B.设计阶段、编程阶段、测试阶段C.总体设计、详细设计、编程调试D.需求分析、功能定义、系统设计14.有以下程序:main()int m=12, n=34;printf(“%d%d“, m+, +n);printtf(“%d%d/n“, n+, +m);程序运行后的输出结果是( )。(分数:1.00)A.12353514B.12353513C.12343514D.1234351315.有以下程序:int fun(int n
7、)if(n=1)return 1;elsereturn(n+fun(n-1);main()int x;scanf(“%d“, x); x=fun(x); printf(“%d/n“, X);执行程序时,给变量 X输入 10,程序的输出结果是( )。(分数:1.00)A.5SB.S4C.65D.4516.设有以下语句:typedef struct Sint g; char h; T;则下面叙述中正确的是( )。(分数:1.00)_17.有以下程序:main()int a, b, d=25;a=d/10%9; b=a-1;printf(“%d,%d/n“, a, b);程序运行后的输出结果是( )
8、。(分数:1.00)A.6,1B.2,1C.6,0D.2,018.以下叙述中错误的是( )。(分数:1.00)A.C语言是一种结构化程序设计语言B.结构化程序由顺序、分支、循环三种基本结构组成C.使用三种基本结构构成的程序只能解决简单问题D.结构化程序设计提倡模块化的设计方法19.下列关于栈的叙述中正确的是( )。(分数:1.00)A.在栈中只能插入数据B.在栈中只能删除数据C.栈是先进先出的线性表D.栈是先进后出的线性表20.使用关系运算对系统进行操作,得到的结果是( )。(分数:1.00)A.属性B.元组C.关系D.关系模式21.有以下程序:main()int i, s=0, t=1, 2
9、, 3, 4, 5, 6, 7, 8, 9;for(i=0; i9; i+=2)s+=*(t+i); printf(“%d/n“, s);程序执行后的输出结果是( )。(分数:2.00)A.45B.20C.25D.3622.若要求从键盘读入含有空格字符的字符串,应使用函数( )。(分数:2.00)A.getc()B.gets()C.getchar()D.scanf()23.下面概念中,不属于面向对象方法的是( )。(分数:2.00)A.对象B.继承C.类D.过程调用24.以下选项中,不能作为合法常量的是( )。(分数:2.00)A.1.234e04B.1.234e0.4C.1.234e+4D.
10、1.234e025.用 C语言编写的代码程序( )。(分数:2.00)A.可立即执行B.是一个源程序C.经过编译即可执行D.经过编译解释即可执行26.一个教师可讲授多门课程,一门课程可由多个教师讲授,则实体教师和课程间的联系是( )。(分数:2.00)A.1:1联系B.1:m联系C.m:1联系D.m:n联系27.设有以下程序段:int x=0, s=0;while(!x!=0) s+=+X;printf(“%d“, s);则( )。(分数:2.00)A.运行程序段后输出 0B.运行程序段后输出 1C.程序段中的控制表达式是非法的D.程序段执行无限次28.在函数调用过程中,如果函数 funA调用
11、了函数 funB,函数 funB又调用了函数 funA,则( )。(分数:2.00)A.称为函数的直接递归调用B.称为函数的间接递归调用C.称为函数的循环调用D.C语言中不允许这样的递归调用29.有以下程序:#includestdio.h#include stdlib.hint fun(int n)int *p;P=(int,) malloc(sizeof(int);-p=n; return *p;main()int a;a=fun(10); printf(“%d/n“, a+fun(10);程序的运行结果是( )。(分数:2.00)A.0B.10C.20D.出错30.若有定义:int a23
12、;,以下选项中对 a数组元素正确引用的是( )。(分数:2.00)A.a2!1B.a23C.a03D.a11!31.以下叙述中正确的是( )。(分数:2.00)A.局部变量说明为 static存储类,其生存期将得到延长B.全局变量说明为 static存储类,其作用域将被扩大C.任何存储类的变量在未赋初值时,其值都是不确定的D.形参可以使用的存储类说明符与局部变量完全相同32.当用户要求输入的字符串中含有空格时,应使用的输入函数是( )。(分数:2.00)A.scanf()B.getchar()C.gets()D.getc()33.以下能正确定义一维数组的选项是( )。(分数:2.00)A.in
13、t a5=0, 112, 3, 4, 5;B.char a=0, 2, 3, 4, 5, /0;C.char a=A, b, C;D.int a5=“0123“;34.有以下程序:void sort (int a, int n)int i,j,t;for(i=0; in-1; i+)for(j=i+1; jn; j+)if(aiaj)t=ai;ai=aj;a1=t;main()int aa10=1, 2, 3, 4, 5, 6, 7, 8, 9, 10, i;sort(aa+2, 5);for(i=0; i10; i+)printf(“%d“, aai);(分数:2.00)A.1, 2, 3,
14、 4, 5, 6, 7, 8, 9, 10,B.1, 2, 7, 6, 3, 4, 5, 8, 9, 10,C.1, 2, 7, 6, 5, 4, 3, 8, 9, 10,D.1, 2, 9, 8, 7, 6, 5, 4, 3, 10,35.有如下程序:main()int n=9;while(n6)n-; printf(“%d“, n);该程序的输出结果是( )。(分数:2.00)A.987B.876C.8765D.987636.有以下程序:int f(int(分数:2.00)A.37.以下不正确的叙述是( )。(分数:2.00)A.在 C程序中,逗号运算符的优先级最低B.在 C程序中,APH
15、 和 aph是两个不同的变量C.若 a和 b类型相同,在计算了赋值表达式 aob后 b中的值将放入 a中,而 b中的值不变D.当从键盘输入数据时,对于整型变量只能输入整型数值,对于实型变量只能输入实型数值38.软件开发离不开系统环境资源的支持,其中必要的测试数据属于( )。(分数:2.00)A.硬件资源B.通信资源C.支持软件D.辅助资源39.若整型变量 a、b、c、d 中的值依次为:1、4、3、2。则条件表达式 ab?a:cd?c:d 的值是( )。(分数:2.00)A.1B.2C.3D.440.软件工程的出现是由于( )。(分数:2.00)A.程序设计方法学的影响B.软件产业化的需要C.软
16、件危机的出现D.计算机的发展二、填空题(总题数:13,分数:26.00)41.在算法的 4个特征中,算法必须能在执行有限个步骤之后终止,指的是算法的 1 性。(分数:2.00)填空项 1:_42.对长度为 10的线性表进行冒泡排序,最坏情况下需要比较的次数为 1。(分数:2.00)填空项 1:_43.有一棵非空二叉树,其第 K层上最多有 1 个结点。(分数:2.00)填空项 1:_44.符合结构化原则的三种基本控制结构是:选择结构、循环结构和 1。(分数:2.00)填空项 1:_45.数据库设计分为以下 6个设计阶段:需求分析阶段、 1、逻辑设计阶段、物理设计阶段、实施阶段、运行和维护阶段。(
17、分数:2.00)填空项 1:_46.以下程序段的输出结果是_。int i=9;printf(“%0/n“, i);(分数:2.00)填空项 1:_47.若变量 a、b 已定义为 int类型并赋值 21和 55,要求用 printf函数以 a=21,b=55 的形式输出,请写出完整的输出语句 1。(分数:2.00)填空项 1:_48.已有定义:char c=“; int a=1,b;(此处 C的初值为空格字符),执行 b=!ca;后 b的值为 1。(分数:2.00)填空项 1:_以下程序的功能是:求出数组 X中各相邻两个元素的和依次存放到 a数组中,然后输出。请填空。main()int x10,
18、 a9, i;fori=0; i10; i+) scanf(“%d“, xi);for( (9) ; i10; i+)ai-1=xi+ (10) ;for(i=0; i9; i+)printf(“%d“, ai);printf(“ “);(分数:2.00)填空项 1:_填空项 1:_以下程序中函数 f的功能是在数组 X的 n个数(假定 n个数互不相同)中找出最大最小数,将其中最小的数与第一个数对换,把最大的数与最后一个数对换。请填空。#includestdio.hvoid f(int x, int n)int p0, p1, i, j, t, m;j=j=x0; p0=p1=0for (m=0
19、; mn; m+)if(xmi)i=xm; p0=m;else if(xmj)j=xm; p1=m;t=xp0; xp0=xn-1; xn-1=t;t=xp1; xp1= (11) ; (12) =t;main()int a10, u;for(u=0; u10; u+)scanf(“%d“, au);f(a, 10);for(u=0; u10; u+)printf(“%d“, au);printf(“/n“):(分数:2.00)填空项 1:_填空项 1:_49.以下程序运行后的输出结果是_。#include string.hchar *ss(char *s)char *p,t;p=s+1; t
20、=*s;while(,p),(p-1)=*p; p+;*(p-1)=t;return s;main()char *p, str10=“abcdefgh“;p=ss(str);printf(“%s/n“, p);(分数:2.00)填空项 1:_50.下面程序输出的结果是_。main()int i;int a33=1, 2, 3, 4, 5, 6, 7, 8, 9;for(i:0; i3; i+)printf(“%d“, a2-ii);(分数:2.00)填空项 1:_51.下面程序的运行结果是_#indude stdio.hmain()int Y,a;y=2, a=1;while(y-!=-1)d
21、oa*=y; a+; while(y-);printf(“%d, %d“, a, y);(分数:2.00)填空项 1:_二级 C语言笔试-205 答案解析(总分:96.00,做题时间:90 分钟)一、选择题(总题数:40,分数:70.00)1.线性表的顺序存储结构和线性表的链式存储结构分别是( )。(分数:2.00)A.顺序存取的存储结构、顺序存取的存储结构B.随机存取的存储结构、顺序存取的存储结构 C.随机存取的存储结构、随机存取的存储结构D.任意存取的存储结构、任意存取的存储结构解析:解析 顺序存储结构中,数据元素存放在一组地址连续的存储单元中,每个数据元素地址可通过公式 LOC(ai)=
22、LOC(a1)+(i-1)L计算得到,从而实现了随机存取。对于链式存储结构,要对某结点进行存取,都得从链的头指针指向的结点开始,这是一种顺序存取的存储结构。2.有以下程序:main()char k; int i;for(i=1; i3; i+)scanf(“%c“, k);switch(k)case0: printf(“another/n“);case 1: printf(“number/n“);程序运行时,从键盘输入:01回车,程序执行后的输出结果是( )。(分数:2.00)A.another numberB.another number anotherC.another number nu
23、mber D.number number解析:解析 本题考核的知识点是 for循环语句和 switch语句嵌套使用。switch 语句的执行过程是:在 switch后面的表达式的值和 case后面常量表达式的值吻合时,就执行后面的语句。如果在该语句的后面没有 break语句,则继续执行下一个 case,直到遇到 break语句或 switch多分支的结束,在 switch语句中,break 语句的作用是使流程跳出 switch结构,终止 switch语句的执行。本题中在 for循环中嵌套了 switch语句,每循环一次通过 scanf()函数从键盘上输入一个 k值,然后执行 switch语句。
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 语言 笔试 205 答案 解析 DOC
