【计算机类职业资格】二级C语言-3-1及答案解析.doc
《【计算机类职业资格】二级C语言-3-1及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C语言-3-1及答案解析.doc(27页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C 语言-3-1 及答案解析(总分:82.00,做题时间:90 分钟)一、B选择题/B(总题数:35,分数:51.00)1.设有定义:int k=0;,以下选项的四个表达式中与其他三个表达式的值不相同的是_。 A. k+ B. k+=1 C. +k D. k+1(分数:2.00)A.B.C.D.2.以下程序的输出结果是 U /Uvoid fun(float *p1,float *p2,float *s) s(float *)calloc(1,sizeof(float);*s*p1+*p2+;main() float s21.1,2.2,b210.0,20.0,*s=a;fun(a,b,s
2、);printf(“%5.2f/n“,* s); A. 11.10 B. 12.00 C. 21.10 D. 1.10(分数:1.00)A.B.C.D.3.以下函数返回 a 所指数组中最小的值所在的下标值 fun(int *a,int n) int i,j=0,p; p=j; for(i=j;in;i+) if(aiap) _; return(p); 在横线处应填入的是 A)i=p B)ap=ai C)p=j D)p=i(分数:2.00)A.B.C.D.4.下列叙述中正确的是 A. 线性链表是线性表的链式存储结构 B. 栈与队列是非线性结构 C. 双向链表是非线性结构 D. 只有根结点的二叉树
3、是线性结构(分数:2.00)A.B.C.D.5.有以下程序:point(char *p)P+=3;)main() char b4=a,b,c,d,*p=b;point(p);printf(“%c/n“,*p);程序运行后的输出结果是_。 A. a B. b C. c D. d(分数:2.00)A.B.C.D.6.下列选项中不属于结构化程序设计方法的是_。 A. 自顶向下 B. 逐步求精 C. 模块化 D. 可复用(分数:2.00)A.B.C.D.7.下列叙述中正确的是U /U。 A. 数据的逻辑结构与存储结构必定一一对应 B. 由于计算机存储空间是向量式的存储结构,因此,数据的存储结构一定是线
4、性结构 C. 程序设计语言小的数组般是顺序存储结构,因此,利用数组只能处理线性结构 D. 以上 3 种说法都不对(分数:2.00)A.B.C.D.8.软件工程的理论和技术性研究的内容主要包括软件开发技术和U /U。 A. 消除软件危机 B. 软件工程管 C. 程序设计自动化 D. 实现软件可重用(分数:1.00)A.B.C.D.9.以下选项中不属于 C 语言的类型的是 A. signed short int B. unsigned long int C. unslgned int D. long short(分数:1.00)A.B.C.D.10.有下列程序:main()int k5;while
5、(-k) printf(“%d“,k-3);printf(“/n“);执行后的输出结果是U /U。 A. 1 B. 2 C. 4 D. 死循环(分数:2.00)A.B.C.D.11.在“文件包含”预处理语句的使用形式中,当#include 后面的文件名用”(双撇号)括起时,寻找被包含文件的方式是U /U。 A.直接按系统设定的标准方式搜索目录 B.先在源程序所在的目录搜索,如没找到,再按系统没定的标准方式搜索 C.仅仅搜索源程序所在目录 D.仅仅搜索当前目录(分数:1.00)A.B.C.D.12.以下程序的输出结果是_。main() char a=“programming“,b=“langua
6、ge“;char *p1,*p2;int i;p1=a;p2=b;for(i=0;i7;i+)if(*(p1+i)=*(p2+i)printf(“%c“,*(p1+i); A.gm B.rg C.or D.ga(分数:2.00)A.B.C.D.13.有以下结构体说明和变量定义,如图所示,指针 p、q、r 分别指向此链表中的 3 个连续结点。struct node int data;struct node *next; *p,*q,*r;(分数:1.00)A.B.C.D.14.下面说明不正确的是U /U。 A. chara10=“china“; B. chara10,*p=a;p=“chiua“
7、; C. char*a;a=“china“; D. chara10,*p;p=a=“china“;(分数:1.00)A.B.C.D.15.下列程序的输出结果是U /U。#includestdio.hint fun(int x) int p;if(x=0x=1)return 3;elsep=x-fun(x-2);return p;void main() printf(“/n%d“,fun(5); A. 5 B. 3 C. 7 D. 1(分数:2.00)A.B.C.D.16.以下程序段的输出结果是char s=“/141/141abc/t“;printf (“%d/n“,strlen(s); A.
8、 9 B. 12 C. 13 D. 14(分数:1.00)A.B.C.D.17.有三个关系 R、S 和 T 如下:(分数:4.00)A.B.C.D.18.阅读下列程序段,则程序的输出结果为#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.19.有以下程序:main() char p=a,b,c,q=“abc“;printf(“%d%d/n“,s
9、izeof(p),sizeof(q);程序运行后的输出结果是 _。 A. 4 4 B. 3 3 C. 3 4 D. 4 3 (分数:1.00)A.B.C.D.20.有以下程序段:#includestdio.hint j;float y;char name50;scanf(“%2d%f%s“,j,y,name);当执行上述程序段,从键盘上输入 55566 7777abc 后,y 的值为_。 A.566.0 B.55566.O C.7777.0 D.566777.0(分数:1.00)A.B.C.D.21.以下不能正确定义二维数组的选项是 _。 A. int a22=1,2; B. int a2=1
10、,2,3,4; C. int a22=1,2,3; D. int a2=1,2,3,4;(分数:2.00)A.B.C.D.22.在关系数据库模型中,通常可以把( )称为属性,其值称为属性值。 A. 记录 B. 基本表 C. 模式 D. 字段(分数:1.00)A.B.C.D.23.以下 fun 函数返回数组中最大值的下标:#includestdio.hint fun(int*s,int n)int i,k;for(i=0,k=i;in;i+)if(sisk)_;return(k);在横线处应填入的内容是_。 A.+k B.i=k C.k+ D.k=i(分数:1.00)A.B.C.D.24.一个
11、C 语言程序是由 A. 一个主程序和若干子程序组成 B. 函数组成 C. 若干过程组成 D. 若干子程序组成(分数:1.00)A.B.C.D.25.以下叙述中正确的是_。 A.一条语句只能定义一个数组 B.每个数组包含一组具有同一类型的变量,这些变量在内存中占有连续的存储单元 C.数组说明符的一对方括号中只能使用整型常量,而不能使用表达式 D.在引用数组元素时,下标表达式可以使用浮点数(分数:1.00)A.B.C.D.26.以下语句的输出结果是 U /Uprintf(“%d,%d,%u/n“,016,16,-16); A. 16,16,65420 B. 14,16,6542 C. 16,16,
12、-16 D. 14,16,-16(分数:1.00)A.B.C.D.27.数据库技术的根本目标是要解决数据的_。 A. 存储问题 B. 共享问题 C. 安全问题 D. 保护问题(分数:2.00)A.B.C.D.28.以下程序的输出结果是U /U。#include stdio.hcharcchar(char eh) if(ch=A, B.char a=/n; C.char a=a; D.char a=“aa“;(分数:1.00)A.B.C.D.32.执行下列程序中的输出语句后,a 的值是U /U。main() int a;printf(“%d/n“, (a=2*3,a*5,a+7); A. 17
13、B. 37 C. 6 D. 13(分数:1.00)A.B.C.D.33.有以下程序:# include stdio.hmain()char a=H;a=(a=A m=B+32; printf(“%c/n“,m);(分数:1.00)填空项 1:_39.若 a=10,b=20,则表达式!(ab) 的值是 1。(分数:1.00)填空项 1:_40.以下程序的功能是计算:s=1+12+123+1234+12345。请填空。 #include stdio.h main( ) int t=0.s =0,i: for(i=1;i=5;i+) t=i+U U /U /U;s=s+t; prinff(“s =
14、% d/n“. s );(分数:2.00)填空项 1:_41.以下程序运行后的输出结果是_。 main() char a=“123456789“,*p; int i=0; p=a; while (*p) if(i%2=0) *p=*; p+; i+; puts(a); (分数:2.00)填空项 1:_42.若有定义: int a33=1,2,3,4,5,6; 则初始化后,a11得到的初值是_,a21得到的初值是_。(分数:2.00)填空项 1:_43.下列程序的功能是将字符串 s 中所有的字符 c 删除。请填空。 #includestdio.h main() char s80; int i,j
15、; gets(S); for(ij0;si!/0;i+) if(si!c)_; sj/0; puts(S); (分数:2.00)填空项 1:_44.以下程序运行后的输出结果是_。 main() int a=3,b=4,c=5,t=99; if(baa=c;c=t; if(acb=a;a=t; printf(“%d %d %d/n“,a,b,c); (分数:4.00)填空项 1:_45.函数 delete(s,i,n)是作用是从字符串 s 中删除从第 i 个字符开始的 n 个字符,请填空。 void delete(char s,int i, int n) int j,k,length=0; wh
16、ile(slength) U U /U /U;-i; j=i if(U U /U /U) k=i+n; if(i+n=length) while(klength) sj+=sk+; sj=/0; (分数:1.00)填空项 1:_46.若有程序 main() int i,j; scanf(“i=%d,j=%d“; p=j; for(i=j;in;i+) if(aiap) _; return(p); 在横线处应填入的是 A)i=p B)ap=ai C)p=j D)p=i(分数:2.00)A.B.C.D. 解析:解析 该程序先判断 aiap,如果条件为真,则 ai比当前设定的最小值小(p 保留的当前
17、最小元素的下标),那么将 i 赋给 p,即将比较过的最小元素下标保留在 p 中,作为下面判断的标准。4.下列叙述中正确的是 A. 线性链表是线性表的链式存储结构 B. 栈与队列是非线性结构 C. 双向链表是非线性结构 D. 只有根结点的二叉树是线性结构(分数:2.00)A. B.C.D.解析:解析 一个非空的数据结构如果满足下列两个条件:有且只有一个根结点;每一个结点最多有一个前件,也最多有一个后件,则称为线性结构。线性链表是线性表的链式存储结构,故选项 A 的说法是正确的。栈与队列是特殊的线性表,它们也是线性结构,故选项 B 的说法是错误的;双向链表是线性表的链式存储结构,其对应的逻辑结构也
18、是线性结构,而不是非线性结构,故选项 C 的说法是错误的;二叉树是非线性结构,而不是线性结构,故选项 D 的说法是错误的。5.有以下程序:point(char *p)P+=3;)main() char b4=a,b,c,d,*p=b;point(p);printf(“%c/n“,*p);程序运行后的输出结果是_。 A. a B. b C. c D. d(分数:2.00)A. B.C.D.解析:解析 本题的考点是 C 语言的函数参数的传递方式(传值)。函数 poret 的形参是一个 char 型指针p,当调用 point(p)时,将指针 p 的值传递给形参,函数 point 中的 p+=3,并不
19、影响主程序 main 中的 p值,因此函数调用结束后,p 仍指向 b 的首地址,输出*p 的值应是字符 a。6.下列选项中不属于结构化程序设计方法的是_。 A. 自顶向下 B. 逐步求精 C. 模块化 D. 可复用(分数:2.00)A.B.C.D. 解析:解析 结构化程序设计方法的主要原则可以概括为:自顶向下,逐步求精,模块化,限制使用goto 语句。7.下列叙述中正确的是U /U。 A. 数据的逻辑结构与存储结构必定一一对应 B. 由于计算机存储空间是向量式的存储结构,因此,数据的存储结构一定是线性结构 C. 程序设计语言小的数组般是顺序存储结构,因此,利用数组只能处理线性结构 D. 以上
20、3 种说法都不对(分数:2.00)A.B.C.D. 解析:解析 一种数据的逻辑结构根据需要可以表示成多种存储结构,数据的逻辑结构与存储结构不一定一一对应,选项 A 错误。计算机的存储空间是向量式的存储结构,但一种数据的逻辑结构根据需要可以表示成多种存储结构,如线性链表是线性表的链式存储结构,数据的存储结构不一定是线性结构,因此选项 B 错误。数组一般是顺序存储结构,但利用利用数组也能处理非线性结构。选项 C 错误。由此可知,只有选项 D 的说法正确。8.软件工程的理论和技术性研究的内容主要包括软件开发技术和U /U。 A. 消除软件危机 B. 软件工程管 C. 程序设计自动化 D. 实现软件可
21、重用(分数:1.00)A.B. C.D.解析:解析 软件工程的目标是:在给定的成本、进度的前提下,开发出具有有效性、可靠性、可理解性、可维护性、可重用性、可适应性、可移植性、可追踪性和可互操作性且满足用户需求的产品。基于这一目标,软件工程的理论和技术性研究的内容主要包括软件开发技术和软件工程管理。9.以下选项中不属于 C 语言的类型的是 A. signed short int B. unsigned long int C. unslgned int D. long short(分数:1.00)A.B.C.D. 解析:本题考核的知识点是 c 语言中的数据类型。在选项中很明显选项 A 为无符号短整
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 语言 31 答案 解析 DOC
