【计算机类职业资格】二级C语言笔试-426及答案解析.doc
《【计算机类职业资格】二级C语言笔试-426及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C语言笔试-426及答案解析.doc(33页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C 语言笔试-426 及答案解析(总分:103.50,做题时间:90 分钟)一、选择题(总题数:40,分数:66.00)1.下列叙述中正确的是_。A) 有一个以上根结点的数据结构不一定是非线性结构B) 只有一个根结点的数据结构不一定是线性结构C) 循环链表是非线性结构D) 双向链表是非线性结构(分数:1.00)A.B.C.D.2.下面的描述中,符合结构化程序设计风格的是( )。A) 使用顺序、选择和重复(循环)三种基本控制结构表示程序的控制逻辑B) 模块只有一个入口,可以有多个出口C) 注重提高程序的执行效率D) 不使用 goto 语句(分数:1.00)A.B.C.D.3.设计程序时,应
2、采纳的原则之一是( )。A) 程序的结构应有助于读者的理解 B) 限制 GOTO 语句的使用C) 减少或取消注释行 D) 程序越短越好(分数:2.00)A.B.C.D.4.下列关于线性表的叙述中,不正确的是( )。 A) 线性表可以是空表 B) 线性表是一种线性结构 C) 线性表的所有结点有且仅有一个前件和后件 D) 线性表是由 n 个元素组成的一个有限序列(分数:2.00)A.B.C.D.5.下列叙述中,不属于软件需求规格说明书的作用的是_。A) 便于用户、开发人员进行理解和交流B) 反映出用户问题的结构,可以作为软件开发工作的基础和依据C) 作为确认测试和验收的依据D) 便于开发人员进行需
3、求分析(分数:2.00)A.B.C.D.6.耦合性和内聚性是对模块独立性度量的两个标准。下列叙述中正确的是_。A) 提高耦合性降低内聚性有利于提高模块的独立性B) 降低耦合性提高内聚性有利于提高模块的独立性C) 耦合性是指个模块内部各个元素间彼此结合的紧密程度D) 内聚性是指模块间互相连接的紧密程度(分数:2.00)A.B.C.D.7.需求分析阶段的任务是( )。A) 软件开发方法 B) 软件开发工具C) 软件开发费用 D) 软件系统功能(分数:2.00)A.B.C.D.8.以下叙述中错误的是_。A) 用户所定义的标识符允许使用关键字B) 用户所定义的标识符应尽量做到“见名知意”C) 用户所定
4、义的标识符必须以字母或下划线开头D) 用户所定义的标识符中,大、小写字母代表不同标识(分数:2.00)A.B.C.D.9.下列方法中,属于白盒法设计测试用例的方法的是( )。 A) 错误推测 B) 因果图 C) 基本路径测试 D) 边界值分析(分数:2.00)A.B.C.D.10.下列叙述中错误的是_。(A) 在数据库系统中,数据的物理结构必须与逻辑结构一致(B) 数据库技术的根本目标是要解决数据的共享问题(C) 数据库设计是指在已有数据库管理系统的基础上建立数据库(D) 数据库系统需要操作系统的支持(分数:2.00)A.B.C.D.11.下列叙述中错误的是_。(A) 一个 C 语言程序只能实
5、现一种算法(B) C 程序可以由多个程序文件组成(C) C 程序可以由一个或多个函数组成(D) 一个 C 函数可以单独作为一个 C 程序文件存在(分数:1.00)A.B.C.D.12.设在 C 语言中,float 类型数据占 4 个字节,则 double 类型数据占( )个字节。A) 1 B) 2 C) 8 D) 4(分数:2.00)A.B.C.D.13.若 w、x、y、z、m 均为 int 型变量,则执行下列的语句后 m 的值是( )。w2,x3,y4,z5;m(wx)?w:x;m(mz)?m:z;m(my)?m:y;A) 2 B) 3 C) 5 D) 4(分数:1.00)A.B.C.D.1
6、4.下列程序的执行结果是( )。#includestdio.hmain()int a,b,c;a=b=2;c=(a+)-1;printf(“%d,%d“,a,c);c+=-a+(+b);printf(“%d,%d“,a,c);A) 3,14,1 B) 3,14,2 C) 2,04,1 D) 2,14,1(分数:2.00)A.B.C.D.15.若有定义 int a=5, b=7;,则表达式 a%=(b%2)运算后,a 的值为( )。A) 0 B) 1 C) 11 D) 3(分数:1.00)A.B.C.D.16.已知 i、j、k 为 int 型变量,若要从键盘输入 2、3、4CR,使 I、j、k
7、的值分别为 2、3、4,下列正确的输入语句是( )。A) scanf(“%3d,%3d,%3d“,float printF;printf(“请输入 2 个数:“);scanf(“%d %f“,printf(“%d%f/n“,Case,printF);以下说法正确的是( )。A) 定义浯句出错,Case 是关键字,不能用作用户自定义标识符,printF 不能用作用户自定义标识符B) 定义语句出错,Int 无法被识别C) 定义语句无错,scanf 不能作为输入函数使用D) 定义语句无错,printf 不能输出 Case 的值(分数:1.00)A.B.C.D.18.以下程序的运行结果是int k=0
8、;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.19.有以下程序:#include stdio, hmain ( )int k=5,n =0;while ( k0)switch (k)default: break;case 1 : n+ =k;case 2 :cas
9、e3 : n+ =k;k-;printf( “% d /n“ ,n);程序运行后的输出结果是( )。A) 0 B) 4 C) 6 D) 7(分数:1.00)A.B.C.D.20.有以下程序main()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.21.有以下程序#includemain()int i,j;for(i=3;i=1;i-)for(j=1
10、;j=2;j+) printf(“%d “,i+j);printf(“/n“);程序运行的结果是_。(A) 2 3 4 3 4 5(B) 4 3 2 5 4 3(C) 2 3 3 4 4 5(D) 4 5 3 4 2 3(分数:2.00)A.B.C.D.22.下列程序的运行结果是( )。#includestdio.hmain()int x=5,a=1,b=2,c=5,d=0;if(aB) if(b!=3)if(!C) x=1;elseif(D) x=1;else x=-1;printf(“%d“,x);A) -1 B) 0C) 1 D) 不确定的值(分数:2.00)A.B.C.D.23.以下程
11、序段中的变量已正确定义:for(i=0;i4;i+,i+)for(k=1;k3;k+);printf(“*“);程序段的输出结果是_。A) * B) * C) * D) *(分数:2.00)A.B.C.D.24.以下程序段的输出结果是 _。main()char s110,s210,s310;scanf(“%s“,s1);gets(s2);gets(s3);puts(s1);puts(s2);puts(s3);输入数据如下: (此处CR代表回车符)aaaCRbbbCRA) aaabbbB) aaabbbC) aaa/0bbb/0D) aaabbb(分数:2.00)A.B.C.D.25.以下选项中
12、值为 1 的表达式是_。(A) 1-0(B) 1-/0(C) 1-0(D) /0-0(分数:2.00)A.B.C.D.26.当把以下四个表达式用做 if 语句的控制表达式时,有一个选项与其他三个选项含义不同,这个选项是( )。A) k%2 B) k%2=1 C) (K%2)!=0 D) !k%2=1(分数:1.00)A.B.C.D.27.定义如下变量和数组:int i;int x33=1,2,3,4,5,6,7,8,9;则下面语句的输出结果是( )。for(i=0; i3; i+)printf(“%d“,xi2-i);A) 1 5 9 B) 1 4 7 C) 3 5 7 D) 3 6 9(分数
13、:2.00)A.B.C.D.28.有以下程序:#includestdio.hmain()int a=1,2,3,4,y,*p=a3;-p;y=*p;printf(“y=%d/n“,y);程序的运行结果是_。A) y=0 B) y=1 C) y=2 D) y=3(分数:2.00)A.B.C.D.29.设有定义:int a=2,b=3,c=4;,则下列选项中值为 0 的表达式是( )。A) (!a=1)p=for(i=0;i9;i+)pi=i;for(i=0;i3;i+)printf(“%d“,a1i);程序运行后的输出结果是_。A) 0 1 2 B) 1 2 3 C) 2 3 4 D) 3 4
14、5(分数:1.00)A.B.C.D.32.有以下程序:int f1(int x, int y) return xy? x:y; int f2(int x, int y) return xy? y:x; main()int a=4, b=3, c=5, d=2, e, f, g;e=f2(f1(a, b), f1(c, d); f=f1(f2(a, b) , f2(c, d);g=a+b+c+d-e-f;printf(“% d, %d, %d/n“, e, f, g);程序运行后的输出结果是_。A) 4, 3, 7 B) 3, 4, 7 C) 5, 2, 7 D) 2, 5, 7(分数:2.00
15、)A.B.C.D.33.执行以下语句段后,xy 的值是( )。 int*pt,xy; xy=200; pt= strcpy(p+strlen(q),q);printf(“%d /n“,sizeof(p);程序运行后的输出结果是_。(A) 9(B) 6(C) 11(D) 7(分数:2.00)A.B.C.D.36.有以下程序#include stdiohint f(int x)int y;if(x=0|x=1) return(3);y=x*x-f(x-2);return y;main()int z;z=f(3); printf(“%d/n“,z);程序的运行结果是A) 0 B) 9 C) 6 D)
16、 8(分数:2.00)A.B.C.D.37.若有结构体定义:struct stuint num;char sex;int age;al,a2;则下列语句中错误的是( )。A) printf(“%d,%C,%d“,a1); B) a2.agea1.age;C) a1.age+; D) a1.num5;(分数:2.00)A.B.C.D.38.有以下程序:#includestdio.hstruct ttint x;struct tt *y; *p;struct tt a4=20,a+1,15,a+2,30,a+3,17,amain()int i;p=a;for(i=1;i=2;i+)printf(“
17、%d“,p-x);p=p-y;程序的运行结果是_。A) 20,30, B) 30,17C) 15,30 D) 20,15(分数:2.00)A.B.C.D.39.有以下程序void fun(int *a, int i, int j)int t;if(ij)t=ai; ai=aj; aj=t;i+ ; j- ;fun(a,i,j);main()int x=2,6,1,8,i;fun(x,0,3);for(i=0;i4; i+)printf(“%2d“,xi);程序运行后的输出结果是_。A) 1 2 6 8 B) 8 6 2 1 C) 8 1 6 2 D) 8 6 1 2(分数:1.00)A.B.C
18、.D.40.已知函数的调用形式:fread(buf,size,count,fp),参数 buf 的含义是( )。A) 一个整型变量,代表要读入的数据项总数B) 一个文件指针,指向要读的文件C) 一个指针,指向要读入数据的存放地址D) 一个存储区,存放要读的数据项(分数:2.00)A.B.C.D.二、填空题(总题数:15,分数:37.50)41.如果一个工人可管理多个设施,而一个设施只可被一个工人管理,则实体“工人”与实体“设备”之间存在U /U联系。(分数:2.00)填空项 1:_42.软件开发过程主要分为需求分析、设计、编码与测试四个阶段,其中 1 阶段产生“软件需求规格说明书”。(分数:4
19、.00)填空项 1:_43.设 Y 是 int 型变量,请写出判断 Y 为奇数的关系表达式U /U。(分数:2.00)填空项 1:_44.以下程序中,函数 SumColumMin 的功能是:求出 M 行 N 列二维数组每列元素中的最小值,并计算它们的和值,和值通过形参传回主函数输出。请填空,#include stdio.h#define M 2#define N 4void SumColumMin ( int a M N ,int* sum)int i,j,k,s=0;for(i =0;iN;i + )k=O;for(j=1 ;j M;j + )if(aki aji) k=j;s+:U /U;
20、U /U=s;main( )int xM N=3,2,5,1,4,1,8,3,s;SumColumMin(U /U);printf( “%d /n“ ,s);(分数:2.00)填空项 1:_45.改变量已正确定义为整型,则表达式 n=i=2,+i,i+的值为U /U。(分数:1.50)填空项 1:_46.以下程序运行后的输出结果是_。 main() int a=3,b=4,c=5,t=79; if(ba break;case 1:b+; break;case2: a+: b+; break;printf(“a=%d,b=%d/n“,a,b);(分数:4.00)填空项 1:_48.以下程序运行后
21、的输出结果是_。 #includestdio.h main() int i, n=0, 0, 0, 0, 0; for(i=1; i=4; i+) ni=ni-1 *3+1; printf(“%d“, ni); (分数:2.00)填空项 1:_49.函数调用语句:“fgets(buf,n,fp);”从 fp 指向的文件中读入,n 个字符放到 buf 字符数组中,函数返回值为 1。(分数:2.00)填空项 1:_50.以下程序的功能是:求出数组 x 中各相邻两个元素的和依次存放到 a 数组中,然后输出。请填空。main( )int x10,a9,i;for(i=0;i10;i+) scanf(“
22、%d“,xi);for( 11 ;i10;i+)ai-1=xi+ 12 ;for(i=0;i9;i+) printf(“%d“,ai);printf(“);(分数:4.00)填空项 1:_51.以下程序中,fun 函数的功能是求 3 行 4 列二维数组每行元素中的最大值。请填空。#include stdio, hvoid fun(int,int,int( * )4 ,int* );main ( )int a3 4 = 12,41,36,28, 19,33,15,27, 3,27,19,1 ,b3 ,i;fun(3,4,a,b);for(i =0;i 3;i + ) printf( “%4d“
23、,bi );prinff(“ /n“ );void fun(int m,int n,int ar 4 ,int* br)int i,j,x;for(i =0;i m;i + )x = ari 0 ;for(j = 0;j n;j + ) if(x ari j ) x = ari j;U /U=x;(分数:2.00)填空项 1:_52.以下程序的输出结果是U /U。#include stdioh#deftne JFT(x)x*xmain()int a,k=3;a=+JFT(k+1);printf(“%d“,a);(分数:2.00)填空项 1:_53.执行以下程序的输出结果是_。#includes
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 语言 笔试 426 答案 解析 DOC
