【计算机类职业资格】二级C语言笔试-399及答案解析.doc
《【计算机类职业资格】二级C语言笔试-399及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C语言笔试-399及答案解析.doc(32页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C 语言笔试-399 及答案解析(总分: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.下列对队列的叙述正确的是A) 队列按“先进后出”原则组织数据 B) 队列属于非线性表C) 队列在队尾删除数据 D
2、) 队列按“先进先出”原则组织数据(分数:1.00)A.B.C.D.4.对长度为 n 的线性表排序,在最坏情况下,比较次数是 nlog2n 的排序方法是A) 快速排序 B) 冒泡排序 C) 直接插入排序 D) 堆排序(分数:1.00)A.B.C.D.5.下列描述中正确的是A) 软件工程只是解决软件项目的管理问题B) 软件工程主要解决软件产品的生产率问题C) 软件工程的主要思想是强调在软件开发过程中需要应用工程化原则D) 软件工程只是解决软件开发中的技术问题(分数:1.00)A.B.C.D.6.在软件设计中,不属于过程设计工具的是A) PDL B) DFD 图 C) PAD 图 D) N-S 图
3、(分数:1.00)A.B.C.D.7.软件(程序)调试的目标是A) 诊断和改正程序中的错误 B) 尽可能多地发现程序中的错误C) 发现并改正程序中的所有错误 D) 确定程序中错误的性质(分数:1.00)A.B.C.D.8.数据库系统的核心是A) 数据库 B) 数据库管理系统 C) 数据库管理员 D) 数据库应用系统(分数:1.00)A.B.C.D.9.在关系数据库中,用来表示实体之间联系的是A) 二维表 B) E-R 图 C) 元组 D) 文件(分数:1.00)A.B.C.D.10.设有如下三个关系表:(分数:1.00)A.B.C.D.11.计算机高级语言程序的运行方法有编译执行和解释执行两种
4、,以下叙述中正确的是A) C 语言程序仅可以编译执行B) C 语言程序仅可以解释执行C) C 语言程序既可以编译执行又可以解释执行D) 以上说法都不对(分数:1.00)A.B.C.D.12.以下叙述中错误的是A) 用户所定义的标识符允许使用关键字B) 用户所定义的标识符应尽量做到“见名识意”C) 用户所定义的标识符中,大、小写字母代表不同标识D) 用户所定义的标识符必须以字母或下划线开头(分数:1.00)A.B.C.D.13.若有说明语句:char c=/72;,则变量 cA) 包含 1 个字符 B) 包含 2 个字符 C) 包含 3 个字符 D) 说明不合法,c 的值不确定(分数:1.00)
5、A.B.C.D.14.现有定义 int a;double b;float c;char k;,则表达式 a/b+c-k 值的类型为A) int B) double C) float D) char(分数:1.00)A.B.C.D.15.以下定义语句中正确的是A) int a=b=0; B) char A=65+1,b=b;C) float a=1,*b=b=1.1;(分数:1.00)A.B.C.D.16.若在定义语句 int a,b,c,*p=*c;之后,接着执行以下选项中的语句,则能正确执行的语句是A) scanf(“%d“,a,b,c); B) scanf(“%d%d%d“,a,b,c);
6、C) scanf(“%d“, D) scanf(“%d“,p);(分数:1.00)A.B.C.D.17.以下程序的运行结果是int k=0;void fun(int m)m+=k;k+=m;printf(“m=%d k=%d“,m,k+);main()int i=4;fun(i+);printf(“i=%d k=%d/n“,i,k);A) m=4 k=5 i=5 k=5 B) m=4 k=4 i=5 k=5C) m=4 k=4 i=4 k=5 D) m=4 k=5 i=4 k=5(分数:1.00)A.B.C.D.18.在执行下述程序时,若从键盘输入 6 和 8,则结果为main()int a,
7、b,s;scanf(“%d%d“,if(ab)s=b;s*=s;printf(“%d“,s);A) 36 B) 64 C) 48 D) 以上都不对(分数:1.00)A.B.C.D.19.有以下程序:main()int k=5,n=0;while(k0)switch(k)default:break;case 1:n+=k;case2:case 3:n+=k;k-;printf(“%d/n“,n);程序运行后的输出结果是A) 0 B) 4 C) 6 D) 7(分数:1.00)A.B.C.D.20.有以下程序:#include stdio.hmain()int x;scanf(“%d“,程序运行时,
8、输入的值在_范围才会有输出结果A) 不等于 10 的整数 B) 大于 3 且不等于 10 的整数C) 大于 3 或等于 10 的整数 D) 小于 3 的整数(分数:1.00)A.B.C.D.21.有以下程序:#include stdio.hmain()int a=1,b=0;printf(“%d,“,b=a+b);printf(“%d/n“, a=2*b);程序运行后的输出结果是A) 0,0 B) 1,0 C) 3,2 D) 1,2(分数:1.00)A.B.C.D.22.有以下程序:main()int num44=1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,i
9、,j;for(i=0;i4;i+)for(j=0;j=i;j+)printf(“%4c“,);for(j=_;jj+)prinft(“%4d“numij);printf(“/n“);若要按以下形式输出数组右上半三角1 2 3 46 7 811 1216则在程序下划线处应填入的语句是A) i-1 B) i+1 C) i D) 4-i(分数:1.00)A.B.C.D.23.以下程序段中,与语句:k=ab?(bc?1:0):0;功能相同的是A) if(ab)else k=0;B) if(ab)|(bc)k=1;else k=0;C) if(a=b) k=0;else if(b=c) k=1;D) i
10、f(ab)k=1;else if(bc)k=1;else k=0;(分数:1.00)A.B.C.D.24.有以下程序:void ss(char*s,chart)while(*s)if(*s=t)*s=t-a+A;s+; main()char str1100=“abcddfefdbd“,c=d;ss(str1,c);printf(“%s/n“ ,str1);程序运行后的输出结果是A) ABCDDEFEDBD B) abcDDfefDbD C) abcAAfefAbA D) Abcddfefdbd(分数:1.00)A.B.C.D.25.现有如下程序段:#include “stdio.h“main(
11、)int k30=12,324,45,6,768,98,21,34,453,456;int count=0,i=0;while(ki)if(ki%2=0|ki%5=0) count+;i+;printf(“%d,%d/n“ ,count,i);则程序段的输出结果为A) 7,8 B) 8,8 C) 7,10 D) 8,10(分数:1.00)A.B.C.D.26.以下程序运行后的输出结果是#include string.hvoid f(char*s,char*t)char k;k=*s;*s=*t;*t=k;s+;t-;if(*s)f(s,t);main()char str10=“welcome“
12、,*p;p=str+strlen(str)/2+1;f(p,p-2);printf(“%s/n“ ,str);A) eelcomw B) weoclme C) welcome D) emoclew(分数:1.00)A.B.C.D.27.设有如下程序段:int x=2004,y=2008;printf(“%d/n“,(x,y);则以下叙述中正确的是A) 输出值为 2004B) 输出值为 2008C) 运行时产生出错信息D) 输出语句中格式说明符的个数少于输出项的个数,不能正确输出(分数:1.00)A.B.C.D.28.有以下程序:#include stdio.hvoid fun(char*c,i
13、nt d)*c=*c+1;d=d+1;priritf(“%c,%c,“,*c,d);main()char b=a,a=A;fun(printf(“%c,%c/n“,b,a);程序运行后的输出结果是A) b,B,b,A B) b,B,B,A C) a,B,B,a D) a,B,a,B(分数:1.00)A.B.C.D.29.有以下程序:#include stdio.h#include string.hmain()char a10=“abcd“;printf(“%d,% d/n“ ,strlen(a),sizeof(a);程序运行后的输出结果是A) 7,4 B) 4,10 C) 8,8 D) 10,
14、10(分数:1.00)A.B.C.D.30.若有定义 int a2 3;,则对 a 数组的第 i 行第 j 列(假设 i,j 已正确说明并赋值)元素值的正确引用为A) *(*(a+i)+j) B) (a+i)j C) *(a+i+j) D) *(a+i)+j(分数:1.00)A.B.C.D.31.有以下程序:#include stdio.hmain()char c1,c2,c3,c4,c5,c6;scanf(“%C%C%C%c“,c5=getchar();c6=getchar();putchar(c1);putchar(c2);printf(“%c%c/n“,c5,c6);程序运行后,若从键盘
15、输入(从第 1 列开始):123 回车45678 回车则输出结果是A) 1267 B) 1256 C) 1278 D) 1245(分数:1.00)A.B.C.D.32.以下程序的运行结果是#include stdio.hint a=1;int f(int c)static int a=2;c=c+1;return(a+)+c;main()int i,k =0;for(i=0;i2;i+)int a=3;k+=f(a);k+=a;printf(“%d/n“,k);A) 17 B) 16 C) 15 D) 14(分数:1.00)A.B.C.D.33.设有定义:int n1=0,n2,*p=Char
16、 c2;NEW;以下说法正确的是A) NEW 是一个结构体变量 B) NEW 是一个结构体类型C) ST 是一个结构体类型 D) 以上说明形式非法(分数:1.00)A.B.C.D.35.有以下程序:#include stdio.h#include string.htypedef struct char name9;char sex; float score2;STU;void f(STU a)STU b=“Zhao“,m,85.0,90.0;int i;strcpy(a.name,b.name);a.sex=b.sex;for(i=0;12;i+) a.scorei=b.scorei;main
17、()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(分数:1.00)A.B.C.D.36.有以下程序:#include stdio.h#define N 4void 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,1
18、0,yN,i;fun(x,y);for(i=0;iN;i+) printf(“%d,“,yi);printf(“/n“);程序的运行结果是A) 1,2,3,4, B) 1,0,7,0, C) 1,4,5,9, D) 3,4,8,10,(分数:1.00)A.B.C.D.37.有以下程序:#include stdio.hint fun(int x,int y)if(x!=y) return(x+y)/2);else return(x);main()int a=4,b=5,c=6;printf(“%d/n“,fun(2*a,fun(b,c);程序运行后的输出结果是A) 3 B) 6 C) 8 D)
19、12(分数:1.00)A.B.C.D.38.若 x 是 int 型变量,且有下面的程序片段:for(x=3;x6;x+)printf(x%2)?(“*%d“):(“#%d/n“),x);上面程序片段的输出结果是A) * *3 #4* *5B) #3* *4#5C) #3*4#5D) *3#4* *5(分数:1.00)A.B.C.D.39.有以下程序:#include stdio.h#define N 5#define M N+1#define f(x)(x*M)main()int i1,i2;i1=f(2);i2=f(1+1);printf(“%d %d/n“,i1,i2);程序的运行结果是A
20、) 12 12 B) 11 7 C) 11 11 D) 12 7(分数:1.00)A.B.C.D.40.有以下程序:#include stdio.hmain()unsigned char a=8,c;c=a3;printf(“%d/n“,c);程序运行后的输出结果是A) 32 B) 16 C) 1 D) 0(分数:1.00)A.B.C.D.二、填空题(总题数:15,分数:60.00)41.对下列二叉树进行前序遍历的结果为 1。(分数:4.00)填空项 1:_42.结构化程序设计的基本原则包括 1、逐步求精、模块化和限制使用 goto 语句。(分数:4.00)填空项 1:_43.数据流图是描述数
21、据在软件中的流动和变换的过程,而对数据流图中所包含元素的定义则是 1。(分数:4.00)填空项 1:_44.在 E-R 图中,_表示实体间的联系。(分数:4.00)填空项 1:_45.在职员管理关系数据库中,存取个职员信息的数据单位是 1。(分数:4.00)填空项 1:_46.以下程序运行后的输出结果是_。main()int a,b,c;a=10; b=20; c=(a%b1)|(a/b1);printf(“%d%d%d/n“,a,b,c);(分数:4.00)填空项 1:_47.有以下程序段,且变量已正确定义和赋值。for(s=1.0,k=1;k=n;k+)s=s+1.0/(k*(k+1);p
22、rintf(“s=%f/n/n“,s);请填空,使下面程序段的功能与之完全相同s=1.0;k=1;while(_)s=s+1.0/(k*(k+1);k+;printf(“s=%f/n/n“ ,s);(分数:4.00)填空项 1:_48.以下程序的输出结果是_。#include stdio.hmain()int n=12345,d;while(n!=0) d=n%10;printf(“%d“,d); n/=10;(分数:4.00)填空项 1:_49.以下程序的输出结果是_。#include stdio.hvoid swap(int *a, int *b)int *t;t=a;a=b;b=t;ma
23、in()int i=3,j=5,*p=printf(“%d%d/n“,*p,*q);(分数:4.00)填空项 1:_50.以下 fun 函数的功能是找出具有 N 个元素的一维数组中的最小值,并作为函数值返回。请填空。(设 N已定义)int fun(int xN)int i,k=0;for(i=0;iN;i+)if(xixk)k=_;return xk;(分数:4.00)填空项 1:_51.mystrlen 函数的功能是计算 str 所指字符串的长度,并作为函数值返回。请填空。int mystrlen(char*str)int I;for(I=0; _!=/n;I+);return(I);(分数
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 语言 笔试 399 答案 解析 DOC
