【计算机类职业资格】二级C语言-12-2及答案解析.doc
《【计算机类职业资格】二级C语言-12-2及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C语言-12-2及答案解析.doc(27页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C 语言-12-2 及答案解析(总分:84.00,做题时间:90 分钟)一、B选择题/B(总题数:35,分数:51.00)1.详细设计的结果基本决定了最终程序的_。 A. 代码的规模 B. 运行速度 C. 质量 D. 可维护性(分数:1.00)A.B.C.D.2.表达式 3.6-5/2+1.2+5%2 的值是_。 A. 4.3 B. 4.8 C. 3.3 D. 3.8(分数:1.00)A.B.C.D.3.下面 4 个关于 C 语言的结论中错误的是U /U。 A. 可以用 dowhile 语句实现的循环一定可以用 while 语句实现 B. 可以用 for 语句实现的循环一定可以用 whi
2、le 语句实现 C. 可以用 while 语句实现的循环一定可以用 for 语句实现 D. dowhile 语句与 while 语句的区别仅是关键字“while”出现的位置不同(分数:2.00)A.B.C.D.4.下面各语句行中,能正确进行赋值字符串操作的语句是 ( ) A.char st 45“ABCDE“; B.char s5A,B,C,D,E C.char*s;s“ABCDE“; D.char*s;scanf(”%s”,s); (分数:1.00)A.B.C.D.5.以下结构体类型说明和变量定义中正确的是_。 A.typedef struct int n;char c;REC; REC t
3、1,t2; B.struct REC; int n;char c;); REC t1,t2; C.typedef struct REC; int n=0;char c=A;t1,t2; D.struct int n;char c;REC; REC t1,t2;(分数:2.00)A.B.C.D.6.变量 p 为指针变量,若 p=for(i=1;i=3;i+)for(j=3;j=i;j+)m=m%j;printf(“%d/n“,m);程序的运行结果是_。 A.1 B.0 C.2 D.3(分数:2.00)A.B.C.D.9.以下叙述中正确的是 _。 A.用 C 程序实现的算法必须要有输入和输出操作
4、B.用 C 程序实现的算法可以没有输出但必须要输入 C.用 C 程序实现的算法可以没有输入但必须要有输出 D.用 C 程序实现的算法可以既没有输入也没有输出 (分数:1.00)A.B.C.D.10.下面一组中都是 C 语言关键字的是_。 A. double Int for B. main while goto C. volatile break static D. malloc sizeof new(分数:1.00)A.B.C.D.11.若有以下说明和语句int c45,(*p)5;p=c;能够正确引用 c 数组元素的是_。 A. p+1 B. *(p+1) C. *(p+1)+3 D. *(
5、p0+2)(分数:1.00)A.B.C.D.12.下面程序的输出结果是_。void prty(int *x)printf(“%d/n“,+ *x);main() int a=25;prty( A. 23 B. 24 C. 25 D. 26(分数:1.00)A.B.C.D.13.若有语句:char*line5;,以下叙述中正确的是_。 A. 定义 line 是一个数组,每个数组元素是一个基类型为 char 的指针变量 B. 定义 line 是一个指针变量,该变量可以指向一个长度为 5 的字符型数组 C. 定义 line 是一个指针数组,语句中的*号称为间址运算符 D. 定义 line 是一个指向
6、字符型函数的指针(分数:2.00)A.B.C.D.14.若 a 为 int 类型,且其值为 3,则执行完表达式 a+=a-=a*a 后,a 的值是 _ 。 A. -3 B. 9 C. -12 D. 6 (分数:1.00)A.B.C.D.15.有以下程序:main() int a=1,b=2,m=0,n=0,k;k=(n=ba)|(m=ab);printf(“%d,%d/n“,k,m);程序运行后的输出结果是U /U。 A. 0,0 B. 0,1 C. 1,0 D. 1,1(分数:1.00)A.B.C.D.16.设有以下定义:typedef unionlong i;int k5;char c,D
7、ATE,struct dateint cat;DATE cow;double dog;too;DATE max;则下列语句的执行结果是 U /Uprintf(“%d“,stzeof(struct date)+sizeof(max); A. 25 B. 30 C. 18 D. 8(分数:1.00)A.B.C.D.17.下列叙述中正确的是_。 A.循环队列有队头和队尾两个指针,因此,循环队列是非线性结构 B.在循环队列中,只需要队头指针就能反映队列中元素的动态变化情况 C.在循环队列中,只需要队尾指针就能反映队列中元素的动态变化情况 D.循环队列中元素的个数是由队头指针和队尾指针共同决定(分数:2
8、.00)A.B.C.D.18.有下列二叉树,对此二叉树中序遍历的结果为U /U。(分数:2.00)A.B.C.D.19.有以下程序:#include stdio.h#include string.hmain() char str20=“One*World“, “One*Dream“, *p=str1;printf(“%d, “, strlen(p); printf(“%s/n“, p);程序运行后的输出结果是_。 A.10, One*Dream! B.9, One*Dream! C.9, One*World D.10, One*World(分数:4.00)A.B.C.D.20.算法的空间复杂度
9、是指U /U。 A. 算法程序的长度 B. 算法程序中的指令条数 C. 算法程序所占的存储空间 D. 算法执行过程中所需要的存储空间(分数:2.00)A.B.C.D.21.下述程序的输出结果是U /U。 #includestdio.h void main() int a20,*p4; int i,k=0; for(i=0;i20;i+) ai=i; for(i=0;i4;i+) pi= while(n6) n-; printf(“%d“,n); 该程序的输出结果是( )。 A. 987 B. 876 C. 8765 D. 9876(分数:1.00)A.B.C.D.24.在结构化方法中,用数据流
10、程图(DFD) 作为描述工具的软件开发阶段是_。 A. 可行性分析 B. 需求分析 C. 详细设计 D. 程序编码 (分数:1.00)A.B.C.D.25.在下列给出的表达式中,与 while(E)中的(E)不等价的表达式是U /U。 A.(!E=O) B.(E0|E0) C.(E=0) D.(E!=0)(分数:1.00)A.B.C.D.26.若变量 a、i 已正确定义,且 i 已正确赋值,合法的语句是_。 A. a=1 B. +i; C. a=a+=5; D. a=int(i);(分数:2.00)A.B.C.D.27.设有以下程序段:int x=0,s=0; while(!x!=0)s+=+
11、x; printf(“%d“, s); 则 A. 运行程序段后输出 0 B. 运行程序段后输出 1 C. 程序段中的控制表达式是非法的 D. 程序段执行无限次(分数:1.00)A.B.C.D.28.以下程序的输出结果是#include int a33=1,2,3,4,5,6,7,8,9,*p;main( ) p=(int *)malloc(sized(int);f(p,a) ;printf(“%d/n“,*p);free(p);f(int *s,int p 3) *s=p11; A. 1 B. 4 C. 7 D. 5(分数:2.00)A.B.C.D.29.有以下程序#include stdio
12、.hint fun(char s) int n=O;while(*s=9 s+; return (n);main() char s10= 6, 1, *, 4, *, 9, *, 0, *;printf(“%d/n“,fun(s); A. 9 B. 61490 C. 61 D. 5(分数:1.00)A.B.C.D.30.若有定义 int *p,n;则通过语句 scanf 能够正确读入数据的程序段是U /U。 A. p=j4;j+) cij=_; for(i=0;i4;i+) for(j=0;j4;j+) printf(“%d“,cij);(分数:2.00)填空项 1:_38.以下程序的输出结果
13、是_。 #includestdio.h main() int i; for(i=a;if;i+,i+)printf(“%c“,i-a+A); printf(“/n“); (分数:2.00)填空项 1:_39.下面程序的运行结果是_。 #define N 10 #define s(x) x*x #define f(x) (x*x) main() int i1,i2; i1=1000/s(N); i2=1000/f(N); printf(“%d %d/n“,i1,i2); (分数:1.00)填空项 1:_40.有以下程序,若运行时从键盘输入:18,11回车,则程序的输出结果是_。 main() i
14、nt a,b; printf(“Enter a,b:“);scanf(“%d,%d“,a,b); while(a!=b) while(ab)a-=b; while(ba)b-=a; printf(“%3d%3d“,a,b); (分数:2.00)填空项 1:_41.有以下程序: main() int n=0,m=1,x=2; if(!n) x-=1; if(m) x-=2; if(x) x-=3; printf(“%d/n“,x); 执行后输出的结果是U U /U /U。(分数:2.00)填空项 1:_42.下列程序的输出结果是_。 main() int i; for(i=1;i+1;i+) i
15、f(i4) printf(“%d/n“,i); break; printf(“%d/n“,i+);(分数:2.00)填空项 1:_43.若 fp 已正确定义为个文件指针,d1.dd 为二进制文件,请填空,以便为“读”而打开此文件:fp=fopen(_);。(分数:3.00)填空项 1:_44.表示“整数 x 的绝对值大于 5“时值为“真“的 C 语言表达式是U U /U /U。(分数:1.00)填空项 1:_45.对于软件测试,从是否需要执行被测软件的角度,可以分为静态测试和动态测试。代码检查属于 1 测试。(分数:3.00)填空项 1:_46.以下程序的输出结果是U U /U /U。 voi
16、d fun() static int a=0; a+=2; printf(“%d“,A) ; main() int cc; for(cc=1;cc4;cc+)fun(); printf(“/n“); (分数:1.00)填空项 1:_47.以下程序运行后的输出结果是U U /U /U。 main() int i,j,a3=1,2,3,4,5,6,7,8,9; for(i=0;i3;i+) for(j=i+1;j3;j+)aji=0; for(i=0;i3;i+) for(j=0;j3;j+)printf(“%d“,aij); printf(“/n“); (分数:2.00)填空项 1:_48.下面
17、程序的功能是:计算 110 之间的奇数之和与偶数之和,请填空。 #include stdio.h main( ) int a,b,c,i; a=c=0; for(i=0;i=10;i+=2) a+=i; _; c+=b; printf(“偶数之和=%d/n“,a); printf(“奇数之和=%d/n“,c-11);(分数:2.00)填空项 1:_49.以下程序的功能是:删去一维数组中所有相同的数,使之只剩一个。数组中的数已按由小到大的顺序排列,函数返回删除后数组中数据的个数。 例如,若一维数组中的数据是: 2 2 2 3 4 4 5 6 6 6 6 7 7 8 9 9 10 10 10 删除
18、后,数组中的内容应该是: 2 3 4 5 6 7 8 9 10 请填空。 #include stdio.h #define N 80 int fun(int a,int n) int i,j=1; for(i=1;in;i+) if(aj-1!=ai) aj+=ai; _; main() int aN=2,2,2,3,4,4,5,6,6,6,6,7,7,8,9,9,10,10,10,i,n=19; printf(“The original data:/n“); for(i=0;in;i+) printf(“%3d“,ai); n=fun(a,n); printf(“/nThe data aft
19、er deleted: /n“); for(i=0;in;i+)printf(“%3d“,ai);printf(“/n/n“); (分数:4.00)填空项 1:_50.以下程序的输出结果是_。 main() char s=“abcdef“; s3=/0; printf(“%s/n“,s); (分数:4.00)填空项 1:_二级 C 语言-12-2 答案解析(总分:84.00,做题时间:90 分钟)一、B选择题/B(总题数:35,分数:51.00)1.详细设计的结果基本决定了最终程序的_。 A. 代码的规模 B. 运行速度 C. 质量 D. 可维护性(分数:1.00)A.B.C. D.解析:解析
20、 详细设计阶段的根本目标是确定应该怎样具体地实现所要求的系统,但详细设计阶段的任务还不是具体的编写程序,而是要设计出程序的“蓝图”,以后程序员将根据这个蓝图写出实际的程序代码。因此,详细设计阶段的结果基本上就决定了最终的程序代码的质量。2.表达式 3.6-5/2+1.2+5%2 的值是_。 A. 4.3 B. 4.8 C. 3.3 D. 3.8(分数:1.00)A.B.C.D. 解析:3.下面 4 个关于 C 语言的结论中错误的是U /U。 A. 可以用 dowhile 语句实现的循环一定可以用 while 语句实现 B. 可以用 for 语句实现的循环一定可以用 while 语句实现 C.
21、可以用 while 语句实现的循环一定可以用 for 语句实现 D. dowhile 语句与 while 语句的区别仅是关键字“while”出现的位置不同(分数:2.00)A.B.C.D. 解析:解析 本题考查几个循环语句的关系。dowhile 语句、while 语句、for 语句所实现的循环可以相互替代;dowhile 语句和 while 语句的区别是 dowhile 语句至少执行一次,再判断循环条件,while 语句是先判断条件再执行。4.下面各语句行中,能正确进行赋值字符串操作的语句是 ( ) A.char st 45“ABCDE“; B.char s5A,B,C,D,E C.char*
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 语言 122 答案 解析 DOC
