【计算机类职业资格】二级C语言笔试-398及答案解析.doc
《【计算机类职业资格】二级C语言笔试-398及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C语言笔试-398及答案解析.doc(32页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C语言笔试-398 及答案解析(总分: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.对于
2、循环队列,下列叙述中正确的是A) 循环队列中元素的个数是由队头指针和队尾指针共同决定B) 在循环队列中,只需要队头指针就能反映队列中元素的动态变化情况C) 在循环队列中,队头指针一定大于队尾指针D) 在循环队列中,队头指针一定小于队尾指针(分数:1.00)A.B.C.D.4.在面向对象方法中,实现信息隐蔽是依靠A) 对象的继承 B) 对象的多态 C) 对象的封装 D) 对象的分类(分数:1.00)A.B.C.D.5.软件生命周期是指A) 软件的开发过程B) 软件的运行维护过程C) 软件产品从提出、实现、使用维护到停止使用退役的过程D) 软件从需求分析、设计、实现到测试完成的过程(分数:1.00
3、)A.B.C.D.6.用数据流图(DFD) 作为描述工具的软件开发阶段是A) 可行性分析 B) 需求分析 C) 概要设计 D) 详细设计(分数:1.00)A.B.C.D.7.耦合性和内聚性是对模块独立性度量的两个标准,下列叙述中正确的是A) 提高耦合性、降低内聚性有利于提高模块的独立性B) 降低耦合性、提高内聚性有利于提高模块的独立性C) 耦合性是指一个模块内部各个元素间彼此结合的紧密程度D) 内聚性是指模块间互相连接的紧密程度(分数:1.00)A.B.C.D.8.在数据管理技术发展的三个阶段中,数据共享最好的是A) 人工管理阶段 B) 文件系统阶段C) 数据库系统阶段 D) 三个阶段相同(分
4、数:1.00)A.B.C.D.9.下列叙述中正确的是A) 为了建立一个关系,首先要构造数据的逻辑关系B) 表示关系的二维表中各元组的每一个分量还可以分成若干数据项C) 一个关系的属性名表称为关系模式D) 一个关系可以包括多个二维表(分数:1.00)A.B.C.D.10.设有如下关系表(分数:1.00)A.B.C.D.11.以下叙述中错误的是A) C语言是一种结构化程序设计语言B) 使用三种基本结构构成的程序只能解决简单问题C) 结构化程序设计提倡模块化的设计方法D) 结构化程序由顺序、分支、循环三种基本结构组成(分数:1.00)A.B.C.D.12.下面四个选项中,均是不合法的用户标识符的选项
5、是A) c-b goto int B) A P_0 do C) float 1a0_A D) _123 temp goto(分数:1.00)A.B.C.D.13.以下选项中值为 1的表达式是A) 1-0 B) 1-/0 C) 1-0 D) /0-0(分数:1.00)A.B.C.D.14.已知各变量的类型说明如下:int k,a,b;unsigned long w=5;double x=1.42;则以下不符合 C语言语法的表达式是A) x%(-3) B) w+=-2C) k=(a=2,b=3,a+b) D) a+=a-=(b=4)*(a=3)(分数:1.00)A.B.C.D.15.设变量 x为
6、float型且已赋值,则以下语句能将 x中的数值保留到小数点后两位,并将第 3位四舍五入的是A) x=(x*100+0.5)/100.0B) x=(int)(x*.100+0.5)/100.0C) x=x*100+0.5/100.0D) x=(x/100+0.5)*100.0(分数:1.00)A.B.C.D.16.以下程序运行后的输出结果是main()int i=1,j=2,k=3;if(i+=1float f=7;,则以下选项中错误的表达式是A) k=k=k B) -k+ C) k%int(f) D) k=f=m(分数:1.00)A.B.C.D.20.有以下程序:#include stdio
7、.hmain()int i,j,m=55;for(i=1;i=3;i+)for(j=3;j=i,j+)m=m%j,printf(“%d/n“,m);程序的运行结果是A) 0 B) 1 C) 2 D) 3(分数:1.00)A.B.C.D.21.有定义语句:char s10;,若要从终端给 s输入 5个字符,错误的输入语句是A) gets( B) scanf(“%s“,s1);C) gets(s); D) scanf(“%s“,s+1);(分数:1.00)A.B.C.D.22.下面的函数调用语句含有实参的个数为func(exp1, exp2)(exp3, exp4, exp5);A) 1 B) 2
8、 C) 4 D) 5(分数:1.00)A.B.C.D.23.有以下程序:void sort(int a,int n)int i,j,t;fbf(i=0;in;i+)for(j=i+1;jn;j+)if(aiaj) t=ai;ai=aj;aj=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);printf(“/n“);程序运行后的输出结果是A) 1,2,3,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、,9,10, D) 1,2,9,8,7,6,5,4,3,10,(分数:1.00)A.B.C.D.24.设变量已正确定义并赋值,以下正确的表达式是A) x=y*5=x+z B) int(15.8%5)C) x=y+z+5,+y D) x=25%5.0(分数:1.00)A.B.C.D.25.有以下程序:#includestdio.hvoid fun(int a,int b)int t;t=a;a=b;b=t;main()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,“
10、,ci);printf(“/n“);程序的运行结果是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,(分数:1.00)A.B.C.D.26.设有如下程序段:char s20=“beijing“,*p;p=s;则执行 p=s;语句后,以下叙述中正确的是A) 可以用*p 表示 s0B) s数组中元素的个数和 p所指字符串长度相等C) s和 p都是指针变量D) 数组 s中的内容和指针变量 p中的内容相等(分数:1.00)A.B.C.D.27.有以下程序:#inc
11、lude stdio.hvoid fun(int p)int d=2;p=d+; printf(“%d“,p);main()int a=1;fun(a);pnntf(“%d/n“ ,a);程序运行后的输出结果是A) 32 B) 12 C) 21 D) 22(分数:1.00)A.B.C.D.28.以下程序的输出结果是fun( char p10)int n=0,i;for(i=0;i7;i+)if(pi0=T) n+;return n;main()char str10=“Mon“,“Tue“,“Wed“,“Thu“,“Fri“,“Sat“,“Sun“;printf(“%d/n“,fun(str);
12、A) 1 B) 2 C) 3 D) 0(分数:1.00)A.B.C.D.29.下面程序由两个源程序文件 t4.h和 t4.c组成,程序编译运行的结果是 t4.h的源程序为:#define N 10#define f2(x)(x*N)t4.c的源程序为:#include stdio.h#define M 8#define f(x)(x)*M)#include “t4.h“main()int i,j;i=f(1+1);j=f2(1+1)printf(“%d%d/n“ ,i,j);A) 920 B) 1611 C) 911 D) 1610(分数:1.00)A.B.C.D.30.下面的程序段运行后,输
13、出结果是int i,j,x=0;static int a88;for(i=0;i3;i+)for(j=0;j3;j+)aij=2*i+j;for(i=0;i8;i+)x+=aij;printf(“%d“,x);A) 9 B) 0 C) 不确定值 D) 18(分数:1.00)A.B.C.D.31.有以下程序:#include stdio.hint f(int n);main()int a=3,s;s=f(a);s=s+f(a);printf(“%d/n“,s);int f(int n)static int a=1;n+=a+;return n;程序运行后的输出结果是A) 7 B) 8 C) 9
14、D) 10(分数:1.00)A.B.C.D.32.有以下程序:#include stdio.hmain()int c=0,k;for(k=1;k3;k+)switch(k)default:c+=k;case 2:c+;break;case 4:c+=2;break;printf(“%d/n“,c);程序运行后的输出结果是。A) 9 B) 7 C) 5 D) 3(分数:1.00)A.B.C.D.33.有以下程序:#include stdio.hstruct ordint x,y; dt2=11,12,13,14;main()struct ord *p=dt;printf(“%d,“,+(p-x)
15、;printf(“%d/n“,+(p-y);程序运行后的输出结果是A) 11,12 B) 12,13 C) 13,14 D) 14,11(分数:1.00)A.B.C.D.34.有以下程序:#define f(x) (x*x)main()int i1,i2;i1=f(8)/f(4);i2=f(4+4)/f(2+2);printf(“%d,%d/n“,i1,i2);程序运行后的输出结果是A) 64, 28 B) 4,4 C) 4,3 D) 64, 64(分数:1.00)A.B.C.D.35.设有以下说明语句:struct exint x;float y;char z; example;则下面的叙述
16、中不正确的是A) struct是结构体类型的关键字 B) example 是结构体类型名C) x,y,z都是结构体成员名 D) struct ex 是结构体类型名(分数:1.00)A.B.C.D.36.有以下程序:int fun1(double a) return (int)(a*=a);int fun2(double x,double y)double a=0,b=0;a=fun1(x);b=fun1(y);return(int)(a+b);main()double w;w=fun2(1.1,2.0);程序执行后变量 w中的值是A) 5.21 B) 5 C) 5.0 D) 0.0(分数:1.
17、00)A.B.C.D.37.有以下程序:#include stdio.h#include string.hmain()char str20=“One * World“,“One * Dream!“,*p=str1;printf(“%d,“ ,strlen(p);printf(“%s/n“ ,p);程序运行后的输出结果是A) 9,One * World B) 9,One * Dream! C) 10,One * Dream! D) 10,One * World(分数:1.00)A.B.C.D.38.阅读下列程序,当运行函数时,输入 abc de fg z10,则输出为#include stdio
18、.h#include ctype.h#include string.hint fun (char *str)int i,j=0;for(i=0;stri!=/0;i+)if(stri!=) strj+=stri;strj=/0;main()char str81;int n;printf(“Input a string:“);gets(str);puts(str);fun(str);printf(“%s/n“,str);A) abcB) z10C) abc de fg z10abcdefgz10D) abc de fg z10(分数:1.00)A.B.C.D.39.下面程序的运行结果是#incl
19、ude stdio.hmain()static char a=“Languagef“,b=“programe“;char *p1, *p2; int k;p1=a; p2=b;for(k=0;k=7;k+)if(*(p1+k)=*(p2+k) printf(“%c“,*(p1+k);A) g ae B) ga C) Language D) 有语法错误(分数:1.00)A.B.C.D.40.有以下程序:#include stdio.hmain()int a=5,b=1,t;t=(a2)|b;printf(“%d/n“,t);程序运行后的输出结果是A) 21 B) 11 C) 6 D) 1(分数:
20、1.00)A.B.C.D.二、填空题(总题数:15,分数:60.00)41.设二叉树如下:(分数:4.00)填空项 1:_42.假设用一个长度为 100的数组(数组元素的下标从 099)作为栈的存储空间,栈底指针 bottom指向栈底元素,栈顶指针 top指向栈顶元素,如果 bottom=99,top=60(数组下标),则栈中具有 1 个元素。(分数:4.00)填空项 1:_43.软件测试用例包括 1 值集和输出值集。(分数:4.00)填空项 1:_44.在关系数据模型中,二维表的行称为元组,二维表的列称为 1。(分数:4.00)填空项 1:_45.在数据库设计中,将 E-R图转换成关系数据模
21、型的过程属于 1 阶段。(分数:4.00)填空项 1:_46.以下程序运行后的输出结果是_。main()int m=011,n=11;printf(“%d%d/n“,+m,n+)(分数:4.00)填空项 1:_47.下面程序的运行结果是_。#include stdio.hmain()int y,a;y=2,a=1;while(y-!=-1)doa*=y;a+; while(y-);printf(“%d,%d“,a,y);(分数:4.00)填空项 1:_48.有以下函数void prt(char ch,int n)int i;for(i=1;i=n;i+)printf(i%6!=0 ? “%c“
22、:“%c/n“,ch);执行调用语句 prt(*,24);后,函数共输出了_行*号。(分数:4.00)填空项 1:_49.有以下程序:struct sint x,y; data2=10,100,20,200;main()struct s*p=data;printf(“%d/n“,+(p-x);程序运行后的输出结果是_。(分数:4.00)填空项 1:_50.函数 fun的返回值是_。fun(char *a,char *b)int num=0,n=0;while(*(a+num)! =/0) num+;while(bn) *(a+num)=bn;num+;n+;return num;(分数:4.0
23、0)填空项 1:_51.函数 my_cmp()的功能是比较字符串 s和 t的大小,当 s等于 t时返回 0,否则返回 s和 t的第一个不同字符的 ASC码差值,即 st 时返回正值,st 时返回负值。请填空。My_cmp( char *s,char *t)while(*s=*t)if(*s=/0)return 0;+s; +t;return_;(分数:4.00)填空项 1:_52.设有以下定义和语句,则*(*(p+2)+1)的值为_。int a32=10, 20, 30, 40, 50, 60,(*p)2;p=a;(分数:4.00)填空项 1:_53.有以下程序:#include stdio.
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 语言 笔试 398 答案 解析 DOC
