【计算机类职业资格】二级C语言笔试-389及答案解析.doc
《【计算机类职业资格】二级C语言笔试-389及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C语言笔试-389及答案解析.doc(31页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C语言笔试-389 及答案解析(总分: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、树:(分数:1.00)A.B.C.D.4.下面关于对象概念的描述中,错误的是( )。A) 对象就是 C语言中的结构体变量B) 对象代表着正在创建的系统中的一个实体C) 对象是一个状态和操作(或方法) 的封装体D) 对象之间的信息传递是通过消息进行的(分数:1.00)A.B.C.D.5.软件开发的结构化生命周期方法将软件生命周期划分成( )。A) 定义、开发、运行维护 B) 设计阶段、编程阶段、测试阶段C) 总体设计、详细设计、编程调试 D) 需求分析、功能定义、系统设计(分数:1.00)A.B.C.D.6.在结构化方法中,用数据流程图(DFD) 作为描述工具的软件开发阶段是( )。A) 可行性
3、分析 B) 需求分析 C) 详细设计 D) 程序编码(分数:1.00)A.B.C.D.7.模块独立性是软件模块化所提出的要求,衡量模块独立性的度量标准则是模块的( )。A) 抽象和信息隐蔽 B) 局部化和封装化C) 内聚性和耦合性 D) 激活机制和控制方法(分数:1.00)A.B.C.D.8.数据库 DB、数据库系统 DBS、数据库管理系统 DBMS之间的关系是( )。A) DB包含 DBS和 DBMS B) DBMS包含 DB和 DBSC) DBS包含 DB和 DBMS D) 没有任何关系(分数:1.00)A.B.C.D.9.关系数据模型( ) A) 只能表示实体间的 1:1联系 B) 只能
4、表示实体间的 1:n联系C) 只能表示实体间的 m:n联系 D) 可以表示实体间的上述 3种联系(分数:1.00)A.B.C.D.10.有三个关系 R、S 和 T如下:(分数:1.00)A.B.C.D.11.一个算法应该具有“确定性”等 5个特性,下面对另外 4个特性的描述中错误的是( )。A) 有零个或多个输入 B) 有零个或多个输出C) 有穷性 D) 可行性(分数:1.00)A.B.C.D.12.下列叙述中错误的是( )。A) 一个 C语言程序只能实现一种算法B) C程序可以由多个程序文件组成C) C程序可以由一个或多个函数组成D) 一个 C函数可以单独作为一个 C程序文件存在(分数:1.
5、00)A.B.C.D.13.若变量已正确定义为 int型,要通过语句 scanf(“%d, %d, %d“, a, b, C); 给 a赋值 1、给 b赋值 2、给 c赋值 3,以下输入形式中错误的是( )。(u 代表一个空格符) A) uuu1, 2, 3回车 B) 1u2u3回车C) 1, uuu2, uuu3回车 D) 1, 2, 3回车(分数:1.00)A.B.C.D.14.以下 4个选项中,不能看成一条语句的是( )。A); B) a=5, b=2.5, c=3.6; C) ifa5); D) if(b!=5) x=2; y=6;(分数:1.00)A.B.C.D.15.已知字母 A的
6、 ASCII代码值为 65,若变量 kk为 char型,以下不能正确判断出 kk中的值为大写字母的表达式是( )。A) kk=Akk=Z B) !(kk=A|kk=Z) C) (kk+32) =a(kk+32) =z D) isalpha(kk) (kk91)(分数:1.00)A.B.C.D.16.当变量 c的值不为 2、4、6 时,值也为“真”的表达式是( )。A) (c=2) |(c=4) |(c=6) B) (c=2c=6) |(c!=3) |(c!=5) C) (c=2c=6)!(c%2) D) (c=2c=6) (c%2!=1)(分数:1.00)A.B.C.D.17.有以下程序:#i
7、ncludestdio.hmain() int k=5, n=0; while(k0) switch(k) default; break; case 1: n+=k; case 2: case 3: n+=k; k-; printf(“%d/n“, n); 程序运行后的输出结果是( )。A) 0 B) 4 C) 6 D) 7(分数:1.00)A.B.C.D.18.有以下程序:#includestdio.hmain() int i, s=1; for(i=1; i50; i+) if!(i%5) !(i%3) ) s+=i; printf(“%d/n“,s); ) 程序的输出结果是( )。A)
8、409 B) 277 C) 1 D) 91(分数:1.00)A.B.C.D.19.当运行以下程序时,从键盘输入 AhaMA(空格)AhaCR,则下面程序的运行结果是( )。#includestdio.hmain() char s80, c=a; int i=0; scanf(“%s“, s); while(si!=/0) ifsi=c) si=si-32; else if(si=c-32) si=si+32; i+; puts(s); A) ahAMa B) AbAMa C) AhAMa空格ahA D) ahAMa空格ahA(分数:1.00)A.B.C.D.20.设变量均已正确定义,若要通过
9、scanf(“%d%c%d%c“, a1, c1, a2, c2); 语句为变量 a1和 a2赋数值 10和 20,为变量 c1和 c2赋字符 X和 Y。以下所示的输入形式中正确的是( )。(注:口代表空格字符) A) 10X 口 20口 Y回车 B) 10X20Y回车C) 10X回车 20Y回车 D) 10X回车20Y回车(分数:1.00)A.B.C.D.21.以下叙述中错误的是( )。A) 用户定义的函数中可以没有 return语句B) 用户定义的函数中可以有多个 return语句,以便可以调用一次返回多个函数值C) 用户定义的函数中若没有 return语句,则应当定义函数为 void类型
10、D) 函数的 return语句中可以没有表达式(分数:1.00)A.B.C.D.22.有以下程序:#includestdio.hfun(int x, int y) return(x+y); main() int a=1, b=2, c=3, sum; sum=fun(a+, b+, a+b), c+); printf(“%d/n“,sum); 执行后的输出结果是( )。A) 6 B) 7 C) 8 D) 9(分数:1.00)A.B.C.D.23.若有说明语句:double *p, a; ,则能通过 scanf语句正确给输入项读入数据的程序段是( )。A) *p=a; scanf(“%lf“,
11、p); B) *p=a; scanf(“%f“, p); C) p=a; scanf(“%lf“, *p); D) p=a; scanf(“%lf, p);(分数:1.00)A.B.C.D.24.已定义以下函数:int fun(int *p) return *p; fun函数返回值是( )。A) 不确定的值 B) 一个整数 C) 形参 p中存放的值 D) 形参 p的地址值(分数:1.00)A.B.C.D.25.有以下程序:#include stdio.hmain() int s12=f1, 2, 3, 4, 4, 3, 2, 1, 1, 1, 2, 3, c5=0), i; for(i=0;
12、i1 2; i+) csi+; for (i=1; i5; i+) printf(“%d“, ci); printf(“/n“); 程序的运行结果是( )。A) 1234 B) 2344 C) 4332 D) 1123(分数:1.00)A.B.C.D.26.已有定义:int i, a10, *p; ,则合法的赋值语句是( )。A) p=100; B) p=a5 C) p=a2+2 D) p=a+2;(分数:1.00)A.B.C.D.27.有以下程序:#include stdio.hvoid fun(int *s, int n1, int n2) int i, j, t; i=n1; j=n2;
13、 while(ij) t=si; si=sj; sj=t; i+; j-; main() int a10=1, 2, 3, 4, 5, 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“); 程序的运行结果是( )。A) 049382716 B) 05948372615 C) 5678901234 D) 0987651234(分数:1.00)A.B.C.D.28.有以下程序:#include stdio.hvoid sort(int
14、 a, int n) int i, j, t; for(i=0; in-1; i+) for(j=i+1; jn; j+) if(aiaj) t=ai; ai=ai; 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); 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, 10, D)
15、1, 2, 9, 8, 7, 6, 5, 4, 3, 10,(分数:1.00)A.B.C.D.29.以下能正确定义二维数组的是( )。A) int a3; B) int a3=2*3; C) int a3=; D) int a23=1, 2, 3, 4;(分数:1.00)A.B.C.D.30.下列程序执行后的输出结果是( )。#include stdio.hvoid func1(int i); void func2(int i); char st=“hello, friend!“; void func1(int i) pnintf(“% c1, sti); if(i3) i+=2; func2
16、(i); void func2(int i) printf(“%c“, sti); if(i3) i+=2; func1(i); main() int i=0; func1(i); printf(“/n“); A) hllo B) heel C) hlo D) hlm(分数:1.00)A.B.C.D.31.有以下程序:#include stdio.hvoid fun(char *t, char *s) while(*t!=0) t+; while(*t+=*s+) !=0); main() char ss10=“acc“, aa10=“bbxxyy“; fun(ss, aA); printf(
17、“%s, %s/n“, ss, aA); 程序的运行结果是( )。A) accxyy, bbxxyy B) acc, bbxxyy C) accxxyy, bbxxyy D) accbbxxyy, bbxxyy(分数:1.00)A.B.C.D.32.以下正确的程序段是( )。A) char str20; scanf(“%s“, str); B) char *p; scanf(“%s“, p); C) char str20; scanf(“%s“, str2) D) char str20, *p=str; scanf(“%s“, p2);(分数:1.00)A.B.C.D.33.有以下程序:#in
18、clude stdio.hint fun(int n) 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,程序的输出结果是( )。A) 55 B) 54 C) 65 D) 45(分数:1.00)A.B.C.D.34.以下叙述中正确的是( )。A) 局部变量说明为 static存储类,其生存期将得到延长B) 全局变量说明为 static存储类,其作用域将被扩大C) 任何存储类的变量在未赋初值时,其值都是不确定的D)
19、 形参可以使用的存储类说明符与局部变量完全相同(分数:1.00)A.B.C.D.35.阅读下列程序段,程序的输出结果为( )。#include stdio.h#define M(X, Y) (X) *(Y) #define N(X, Y) (X)/(Y) main() int a=5, b=6, c=8, k; k=N(M(a, b), c); printf(“%d/n“, k); A) 3 B) 5 C) 6 D) 8(分数:1.00)A.B.C.D.36.以下 scanf函数调用语句中对结构体变量成员的引用不正确的是( )。struct pupi1char name20; int age;
20、 int sex; pup5, *p; p=pup; A) scanf(“%s“, pup0. name); B) scanf(“%d“, pup0. age); C) scanf(“%d“, (p-sex) ); D) scanf(“%d“, p-age);(分数:1.00)A.B.C.D.37.若有以下定义的语句:struct studentint age; int num; ; struct student stu3=1001, 20, 1002, 19, 1003, 21; main() struct student *p; p=stu; 则以下不正确的引用是()。A) (p+) -n
21、um B) p+C) (*p) .num D) p=stu.age(分数:1.00)A.B.C.D.38.以下程序的输出结果是( )。struct HARint x, y; struct HAR *p; h2; main() h0.x=1; h0.y=2; h1.x=3; h1.y=4; h0.p=h1; h1.p=h; printf(“%d%d/n“, (h0.p) -x, (h1.p) -y); A) 12 B) 23 C) 14 D) 32(分数:1.00)A.B.C.D.39.有以下程序:#include stdio.hmain() char a=4; printf(“%d/n“, a
22、=a1); 程序的运行结果是( )。A) 40 B) 16 C) 8 D) 4(分数:1.00)A.B.C.D.40.有以下程序:#include stdio.hmain() FILE *pf; char *s1=“China“, *s2=“Beijing“; pf=fopen(“123.dat“, “wb+“); fwrite(s2, 7, “, pf); rewind(pf); /*文件位置指针回到文件开头*/fwrite(s1, 5, 1, pf); fclose(pf); 以上程序执行后 123.dat文件的内容是( )。A) China B) Chinang C) ChinaBeij
23、ing D) BeijingChina(分数:1.00)A.B.C.D.二、程序填空题(总题数:1,分数:18.00)下列给定程序中,函数 fun的功能是:统计带头结点的单向链表中结点的个数,并存放在形参 n所指的存储单元中。请在下划线处填入正确的内容并将下划线删除,使程序得出正确的结果。注意:部分源程序给出如下。不得增行或删行,也不得更改程序的结构!试题程序:#include stdio.h#include stdlib.h#define N 8typedef struct listint data; struct list *next; SLIST; SLIST *creatlist(in
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 语言 笔试 389 答案 解析 DOC
