【计算机类职业资格】二级C语言笔试-475及答案解析.doc
《【计算机类职业资格】二级C语言笔试-475及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C语言笔试-475及答案解析.doc(31页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C语言笔试-475 及答案解析(总分:103.00,做题时间:90 分钟)一、选择题(总题数:40,分数:69.00)1.常采用的两种存储结构是( )。A顺序存储结构和链式存储结构 B散列方法和索引方式C链表存储结构和数组 D线性存储结构和非线性存储结构(分数:1.00)A.B.C.D.2.下列选项中,不是一个算法的基本特征的是( )。A) 完整性 B) 可行性 C) 有穷性 D) 拥有足够的情报(分数:2.00)A.B.C.D.3.下列叙述中正确的是( )。A) 一个算法的空间复杂度大,则其时间复杂度必定大B) 一个算法的空间复杂度大,则其时间复杂度必定小C) 一个算法的时间复杂度大,
2、则其空间复杂度必定小D) 上述三种说法都不对(分数:2.00)A.B.C.D.4.结构化程序设计的主要特点是_。A) 模块化 B) 每个控制结构具有封装性C) 每个控制结构具有独立性 D) 每个控制结构只有一个入口和一个出口(分数:2.00)A.B.C.D.5.在长度为 n的有序线性表中进行二分查找,最坏情况下需要比较的次数是A) O(n) B) O(n2) C) O(log2n) D) O(nlog2n)(分数:2.00)A.B.C.D.6.有下列二叉树,对此二叉树前序遍历的结果为( )。(分数:1.00)A.B.C.D.7.下列叙述中,不属于软件需求规格说明书的作用的是A) 便于用户、开发
3、人员进行理解和交流B) 反映出用户问题的结构,可以作为软件开发工作的基础和依据C) 作为确认测试和验收的依据D) 便于开发人员进行需求分析(分数:2.00)A.B.C.D.8.算法的有穷性是指( )。A) 算法程序的运行时间是有限的 B) 算法程序所处理的数据量是有限的C) 算法程序的长度是有限的 D) 算法只能被有限的用户使用(分数:2.00)A.B.C.D.9.设计程序时,应采纳的原则之一是( )。A) 程序的结构应有助于读者的理解 B) 限制 GOTO语句的使用C) 减少或取消注释行 D) 程序越短越好(分数:2.00)A.B.C.D.10.两个或两个以上的模块之间关联的紧密程度称为(
4、)。 A) 耦合度 B) 内聚度 C) 复杂度 D) 连接度(分数:2.00)A.B.C.D.11.冒泡排序在最坏的情况下的比较次数是A) n(n+1)/2 B) nlog2n C) n(n-1)/2 D) n/2(分数:2.00)A.B.C.D.12.下面叙述正确的是( )。A) 算法的执行效率与数据的存储结构无关B) 算法的空间复杂度是指算法程序中指令(或语句)的条数C) 算法的有穷性是指算法必须能在执行有限个步骤之后终止D) 以上三种描述都不对(分数:1.00)A.B.C.D.13.在 E-R图中,用来表示实体的图形是_。(A) 矩形(B) 椭圆形(C) 菱形(D) 三角形(分数:2.0
5、0)A.B.C.D.14.对关系 S和只进行集合运算,结果中既包含 S中的所有元组也包含只中的所有元组,这样的集合运算称为( )。A) 并运算 B) 交运算 C) 差运算 D) 积运算(分数:2.00)A.B.C.D.15.设有定义下列:int a=1,b=2,c=3,d=4,m=2,n=2;则表达式(m=ab)float fun(int a, int b)B) float fun( int a,int b)main( )x = fun(i,j);C) float fun(int, int);main( )x=fun(2,10);float fun(iht a, int b)D) main(
6、)float fun(int i, int j);x = fun(i,j);float fun(int a,int b) (分数:1.00)A.B.C.D.22.以下程序的输出结果是( )。main()int a33=1,2),3,4),5,6),i,j,s=0;for(i=1;i3;i+)for(j=0;j=i;j+)s+=aij;printf(“%d/n“,s);A18 B19 C20 D21(分数:1.00)A.B.C.D.23.有以下程序:main()int i,j,x=0;for(i=0;i2;i+)x+;for(j=0;j=3;j+)if(j*2)continue;x+;x+;pr
7、intf(“x=%d/n”,x);程序执行后的输出结果是_。A) x=4 B) x=8 C) x=6 D) x=12(分数:2.00)A.B.C.D.24.以下选项中值为 1的表达式是_。A) 1-0 B) 1-/0 C) 1-0 D) /0-0(分数:2.00)A.B.C.D.25.下列程序的输出结果是( )。#includestdio.hint b=2;int func(int*A) b+=*a;retum b;main()int a=1,t=2;t+=func(printf(“%d/n“,t);A) 4 B) 5 C) 6 D) 8(分数:2.00)A.B.C.D.26.以下程序运行后的
8、输出结果是 #includestdio.h #includestring.h main() char x=“STRING“; x0=0; x1=/0; x2=0; printf(“%d%d/n“, sizeof(x),strlen(x); A) 6 1 B) 7 0 C) 6 3 D) 7 1(分数:2.00)A.B.C.D.27.有下列程序:main()int i;for(i=1;i=40;i+)if(i+%5= =0)if(+ +i%8= =0)printf(“%d“,i);printf(“/n“);执行后的输出结果是( )。A) 5 B) 24C) 32 D) 40(分数:2.00)A.
9、B.C.D.28.若有定义:int a410;,则以下选项中对数组元素 aij引用错误的是_。 (o=i4,0=j=10A) *(i12;i+)csi+;for(i=1;i5;i+)printf(“%d“,ci);printf(“/n“);程序的运行结果是_。A) 1 2 3 4 B) 2 3 4 4 C) 4 3 3 2 D) 1 1 2 3(分数:2.00)A.B.C.D.30.下列叙述中,错误的是( )。A) 在同一 C程序文件中,不同函数中可以使用名字相同的变量B) 在 main()函数体内定义的变量是全局变量C) 形参是局部变量,函数调用完成即失去意义D) 若同一文件中全局和局部变量
10、同名,则全局变量在局部变量作用范围内不起作用(分数:2.00)A.B.C.D.31.已有定义:char a=“xyz“,b=x,y,z;,以下叙述中正确的是_。A) 数组 a和 b的长度相同 B) a 数组长度小于 b数组长度C) a数组长度大于 b数组长度 D) 上述说法都不对(分数:1.00)A.B.C.D.32.下列程序的运行结果为( )。#includestdiohvoidabc(Char*str)inta,b,i,j;for(i=j=0;stri!=/0;i+)if(stri!=a)strj+=stri;strj=/0;void main()char str=“abcdef“;abc
11、(str);printf(“str=%s“,str);A) str=bcdef B) str=abcdef C) str=a D) str=ab(分数:2.00)A.B.C.D.33.设变量已正确定义,则下列能正确计算 f=n!的程序段是( )。A) f=0;for(i=1 ;i=n;i+) f*=i;B) f=1;for(i=1;in;i+) f*=i;C) f=1;for(i=n;i1;i+)f*=i;D) f=1;for(i=n;i =2;i-)f*=i;(分数:2.00)A.B.C.D.34.下列二维数组初始化语句中,不正确的是( )。A) int b2=1,2,3,4,5,6,7;
12、B) int b35=0,0,0;C) int b4=1,2,3,4,5,6; D) int b32=(1,2),(3,4) ,(5,6);(分数:2.00)A.B.C.D.35.有以下程序:#includestdio.hvoid fun(char*t,char*s)while(*t!=0)t+;while(*t+=*s+)!=0);main()char ss10=“acc“,aa10=“bbxxyy“;fun(ss,aa);printf(“%s,%s/n“,ss,aa);程序的运行结果是_。A) accxyy,bbxxyy B) acc,bbxxyy C) accxxyy,bbxxyy D)
13、 accbbxxyy,bbxxyy(分数:2.00)A.B.C.D.36.下列程序段的输出结果为( )。#includestdio.hmain()static char a=“language“;char *p;p=a;for(p=a;pa+8;p+=2)putchar(*p);A) language B) lnug C) 有语法错误 D) lang(分数:2.00)A.B.C.D.37.以下程序运行后的输出结果是#includestdio.h#includestring.htypedef struetchar name9;char sex;float score2; STU;void f(S
14、TU a)STU b=“Zhao“,m,85.0,90.0;int i;strcpy(a.name,b.name);a.sex=b.sex;for(i=0;i2;i+) a.scorei=b.scorei;main( )STU c= “Qian“,f,95.0,92.0;f(c);printf(“%s,%c,%2.0f,%2.0f/n“,c.name,c.sex,c.score0,c.score1);A) Qian,f,95,92 B) Qian,m,85,90 C) Zhao,f,95,92 D) Zhao,m,85,90(分数:2.00)A.B.C.D.38.现有以下结构体说明和变量定义,
15、如图所示,指针 p、q、r 分别指向一个链表中连续的三个节点。struct nodechar data;struct node*next;*p,*q,*r;(分数:2.00)A.B.C.D.39.有以下程序#include stdio.hmain()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);程序的运行结果是_。A)
16、 Qian,f,95,92 B) Qian,85,90 C) Zhao,f,95,92 D) Zhao,m,85,90(分数:2.00)A.B.C.D.40.设有以下语句:char x=3,y=6,z;z=xy2;则 z的二进制值是( )。A) 00010100 B) 00011011 C) 00011100 D) 00011000(分数:2.00)A.B.C.D.二、填空题(总题数:15,分数:34.00)41.线性表的存储结构主要分为顺序存储结构和链式存储结构,队列是一种特殊的线性表,循环队列是队列的 1 存储结构。(分数:2.00)填空项 1:_42.诊断和改正程序中错误的工作通常称为
17、1。(分数:2.00)填空项 1:_43.符合结构化原则的 3种基本控制结构是选择结构、循环结构和 1。(分数:2.00)填空项 1:_44.队列是限定在表的一端进行插入和在另一端进行删除操作的线性表。允许删除的一端称作 1。(分数:2.00)填空项 1:_45.若 x和 a均是 int型变量,则计算完 x=(a=4,6*2)后的 x值为 1。(分数:2.00)填空项 1:_46.若 x为血类型,请写出与!x 等价的 C语言表达式 1。(分数:2.00)填空项 1:_47.47. 以下程序将数组 a的 4个元素和数组 b的 6个元素写到名为 lett.dat的二进制文件中,请填空。#inclu
18、de stdioh#include stdlibhmain()FILE *fp;char a5=“1234“,b7=“abcedf“;if(fp=fopen(“U /U“,“wb“)=NULL) exit(0);fwrite(a,sizeof(char),4,fp);fwrite(b,U /U,1,fp);fclose(fp);(分数:2.00)填空项 1:_48.若从键盘输入 24,则以下程序输出的结果是_。#includestdio.hmain()int a;scanf(“%d“,if(a20) printf(“%d“,a);if(a10) printf(“%d“,a);if(a5) pr
19、intf(“%d“,a);(分数:2.00)填空项 1:_49.49. 有以下程序;int a=2;int f(int *A) return(*A) +;main()int s=0;int a=5;s+=f(for(i=0;iN;i+)for(j=0;jN-1;j+)for(k=U /U;kN;K+)/*判_U/U?aijaik)t=aij;aij=aik;aik=t;void outarr(int aNN) main()int aNN=2,3,4,1,8,6,5,7,11,12,10,9,15,14,16,13;outarr(aa);/*以矩阵的形式输出二维数组*/sour(aa);outa
20、rr(aa);(分数:4.00)填空项 1:_填空项 1:_以下程序的功能是:通过函数 func输入字符并统计输入字符的个数。输入时用字符作为输入结束标志。请填空。#includestdio.hlongU /U /* 函数说明语句 */main( )long n;n=func( );printf(“n=%1d/n“,n);long func( )long m;for(m=0;getchar( )!=;U /U);return m;(分数:4.00)填空项 1:_填空项 1:_52.下列程序执行输出的结果是_。#include stdio.hf (int a)int b=0;static c=7
21、;a=c+; b+;return (a);main()int a=2,i,k;for(i=0;i2;i+)k=f(a+);printf(“%d/n“, k);(分数:2.00)填空项 1:_53.在进行关系数据库的逻辑设计时,E-R 图中的属性常被转换为关系中的属性,联系通常被转换为 1。(分数:2.00)填空项 1:_二级 C语言笔试-475 答案解析(总分:103.00,做题时间:90 分钟)一、选择题(总题数:40,分数:69.00)1.常采用的两种存储结构是( )。A顺序存储结构和链式存储结构 B散列方法和索引方式C链表存储结构和数组 D线性存储结构和非线性存储结构(分数:1.00)A
22、. B.C.D.解析:解析 线性表的存储通常要用两种存储结构:顺序存储结构和链式存储结构。2.下列选项中,不是一个算法的基本特征的是( )。A) 完整性 B) 可行性 C) 有穷性 D) 拥有足够的情报(分数:2.00)A. B.C.D.解析:解析 作为一个算法,一般应该具有 4个特征:可行性,即考虑到实际的条件能够达到一个满意的结果:确定性,算法中的第一个步骤都必须是有明确定义的;有穷性,一个算法必须在有限的时间内做完;拥有足够的情报。3.下列叙述中正确的是( )。A) 一个算法的空间复杂度大,则其时间复杂度必定大B) 一个算法的空间复杂度大,则其时间复杂度必定小C) 一个算法的时间复杂度大
23、,则其空间复杂度必定小D) 上述三种说法都不对(分数:2.00)A.B.C.D. 解析:解析 算法的时间复杂度和算法的空间复杂度是从不同的角度来衡量算法的执行情况,它们之间没有内在联系。4.结构化程序设计的主要特点是_。A) 模块化 B) 每个控制结构具有封装性C) 每个控制结构具有独立性 D) 每个控制结构只有一个入口和一个出口(分数:2.00)A.B.C.D. 解析:解析 按照结构化设计方法设计的程序具有以下特点:(1)程序易于理解、使用和维护,程序员采用结构化编程方法,便于控制、降低程序的复杂性,因此容易编写程序,便于验证程序的正确性。结构化程序清晰易读,可理解性好,程序员能够进行逐步求
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 语言 笔试 475 答案 解析 DOC
