【计算机类职业资格】二级C语言-217及答案解析.doc
《【计算机类职业资格】二级C语言-217及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C语言-217及答案解析.doc(17页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C 语言-217 及答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:40,分数:100.00)1.算法的空间复杂度是指_。(分数:2.50)A.算法程序的长度B.算法程序中的指令条数C.算法程序所占的存储空间D.算法执行过程中所需要的存储空间2.下列叙述中正确的是_。(分数:2.50)A.一个逻辑数据结构只能有一种存储结构B.逻辑结构属于线性结构,存储结构属于非线性结构C.一个逻辑数据结构可以有多种存储结构,且各种存储结构不影响数据处理的效率D.一个逻辑数据结构可以有多种存储结构,且各种存储结构影响数据处理的效率3.下列关于类、对象、属性和方法的叙述中,错误的是_
2、。(分数:2.50)A.类是对一类具有相同的属性和方法对象的描述B.属性用于描述对象的状态C.方法用于表示对象的行为D.基于同一个类产生的两个对象不可以分别设置自己的属性值4.在软件开发中,需求分析阶段产生的主要文档是_。(分数:2.50)A.数据字典B.详细设计说明书C.数据流图说明书D.软件需求规格说明书5.数据库设计的四个阶段是:需求分析、概念设计、逻辑设计和_。(分数:2.50)A.编码设计B.测试阶段C.运行阶段D.物理设计6.在下列关系运算中,不改变关系表中的属性个数但能减少元组个数的是_。(分数:2.50)A并B交C.投影D除7.下列叙述中,正确的是_。(分数:2.50)A.软件
3、交付使用后还需要进行维护B.软件一旦交付使用就不需要再进行维护C.软件交付使用后其生命周期就结束D.软件维护是指修复程序中被破坏的指令8.设一棵满二叉树共有 15 个结点,则在该满二叉树中的叶子结点数为_。(分数:2.50)A.7B.8C.9D.109.设 R 是一个 2 元关系,有 3 个元组,S 是一个 3 元关系,有 3 个元组。如 T=RS,则 T 的元组的个数为_。(分数:2.50)A.6B.8C.9D.1210.下列选项中,不属于数据库管理的是_。(分数:2.50)A.数据库的建立B.数据库的调整C.数据库的监控D.数据库的校对11.对于一个正常运行的 C 程序,下列叙述中正确的是
4、_。(分数:2.50)A.程序的执行总是从 main 函数开始,在 main 函数结束B.程序的执行总是从程序的第一个函数开始,在 main 函数结束C.程序的执行总是从 main 函数开始,在程序的最后一个函数中结束D.程序的执行总是从程序中的第一个函数开始,在程序的最后一个函数中结束12.以下选项中与 if(a=1)a+;else a=b;语句功能不同的语句是_。(分数:2.50)A.switch(a)case 0:a=b;break;default:a+;B.switch(a=1)case 0:a+;default:a=b;C.switch(a)default:a=b;break;cas
5、e 1:a+;D.a=(a=1)?(a+):b13.以下不合法的用户标识符是_。(分数:2.50)A.804zhangB._hhC.yy614D.If14.已知 char a;int b;float c;double d:则表达式 a-b+c-d 结果为_型。(分数:2.50)A.doubleB.floatC.intD.char15.假设有语句 sizeof(double),则它是_。(分数:2.50)A.一个整型表达式B.一个双精度浮点型表达式C.一种函数调用D.一种函数定义16.若变量都已正确说明,则以下程序段输出结果为_。 #includestdio.h main() char a=“a
6、“; int b=2; printf(ab?“*a=%d“:“#b=%d“,a,b); (分数:2.50)A.*a=3B.#b=3C.*a=3#b=5D.全部错误17.若有以下定义(设 int 类型变量占 2 个字节) int i=8,j=9; 则以下语句: printf(“i=%d,j=%d/n“,i,j); 输出的结果是_。(分数:2.50)A.i=8,j=9B.i=%d,j=%8C.i=%d,j=%dD.8,918.设 a 和 b 均为 int 型变量,且 a=6,b=11,则能使值为 3 的表达式是_。(分数:2.50)A.b%(a%4)B.b%(a-a%5)C.b%a-a%5D.(b
7、%a)-(a%4)19.有关 return 语句说法不正确的是_。(分数:2.50)A.系统默认的返回值类型为整型,故当函数的返回值为 int 型时,在函数定义时,返回值的类型说明可以省略。B.当函数有返回值时,凡是允许表达式出现的地方,都可以调用该函数。C.当函数没有返回值时,函数的返回值类型可以说明为 void 型,它表示“无类型”或“空类型”。D.函数的返回值类型必须与 return 语句中的表达式值的类型一致,但 C 语言也允许不同;这时,系统以函数定义时的返回值类型说明为准,并自动地将 return 语句中表达式的值转换为函数的返回值类型。20.有以下程序: #includestdi
8、o.h main() int i=0,a=0; while(i20) for(;) if(i%5)=0)break; else i-; i+=13,a+=i; printf(“%d/n“,a); 程序的输出结果是_。(分数:2.50)A.62B.63C.23D.3621.在下列选项中,没有构成死循环的程序段是_。(分数:2.50)A.int i=100;for(;) i=i%10+1;if(i10)break;B.while(i);C.int k=0;do+k;while(k=10);D.int s=12;while(s);-s;22.若已定义的函数有返回值,则以下关于该函数调用的叙述中错误的
9、是_。(分数:2.50)A.函数调用可以作为独立的语句存在B.函数调用可以作为一个函数的实参C.函数调用可以出现在表达式中D.函数调用可以作为一个函数的形参23.以下程序的输出结果是_。 #includestdio.h main() int a=1,b=3; if(+a0) else printf(“%d,%d/n“,b,a); (分数:2.50)A.2,2B.1,3C.3,2D.3,124.有以下程序: #include stdio.h main() int x; scanf(“%d“, if(x=0);else if(x!=5) printf(“%d/n“,x); 程序运行时,输入的值在哪
10、个范围才会有输出结果_。(分数:2.50)A.不等于 5 的整数B.大于 0 且不等 5 的整数C.大于 0 或等于 5 的整数D.小于 5 的整数25.若执行下述程序时,若从键盘输入 6 和、8,结果为_。 main() int a,b,s; scanf(“%d%d“, s=a; if(s=b) s*=s; printf(“%d“,s); (分数:2.50)A.36B.64C.48D.以上都不对26.若运行时给变量 x 输入 12,则以下程序的运行结果是_。 main() int x,y; scanf(“%d“, y=x12?x+10:x-12; printf(“%d/n“,y); (分数:
11、2.50)A.0B.22C.12D.1027.运行下面程序时,从键盘输入字母 A,则输出结果是_。 #includestdio.h main() char ch; ch=getchar(); switch(ch) case“A“:printf(“AAAA/n“); case“B“:printf(“BBBB/n“); default:printf(“CCCC/n“); (分数:2.50)A.AAAAB.AAAABBBBC.AAAABBBBCCCCD.AAAACCCC28.以下叙述正确的是_。(分数:2.50)A.只能在循环体内和 switch 语句体内使用 break 语句B.contiune
12、语句的作用是结束整个循环的执行C.在循环体内使用 break 语句或 continue 语句的作用相同D.从多层循环嵌套中退出时,只能使用 goto 语句29.下列叙述中错误的是_。(分数:2.50)A.在 C 语言中,对二进制文件的访问速度比文本文件快B.在 C 语言中,随机文件以二进制代码形式存储数据C.语句 FILE fp;定义了一个名为 fp 的文件指针D.C 语言中的文本文件以 ASCII 码形式存储数据30.若输入“abcdef”、“abdef”,以下程序的输出结果为_。 #includestdio.h #includestring.h main() int n; char s12
13、0,s220,*p1,*p2; scanf(“%s“,s1); scanf(“%s“,s2); p1=s1; p2=s2; n=strcmp(p1,p2); printf(“%d/n“,n);(分数:2.50)A.-1B.0C.“abcdef“D.“abdef“31.以下语句定义正确的是_。(分数:2.50)A.int a14=1,2,3,4,5;B.float a3=1,2,3;C.long a23=1,1,2,1,2,3,0,0;D.double a3=0;32.下述程序的输出结果是_。 #includestdio.h void main() int a5=1,2,3,4,5); int
14、*p=a,*q= printf(“%d“,*(p+); printf(“%d“,*q); (分数:2.50)A.22B.11C.34D.1233.字符串“/“ABCDEF“/“的长度是_。(分数:2.50)A.11B.10C.5D.334.若二维数组 a 有 m 列,则在 aij前的元素个数为_。(分数:2.50)A.j*m+iB.i*m+jC.j*m+i+1D.i*m+j+135.下列程序的运行结果是_。 #includestdio.h void fun(int*s,int*p) static int t=3; *p=st; t-; void main() int a=2,3,4,5,k,x
15、; for(k=0;k4;k+) fun(a, printf(“%d,“,x); (分数:2.50)A.5,4,3,2,B.2,3,4,5,C.2,2,2,2,D.5,5,5,5,36.以下有关宏替换的叙述不正确的是_。(分数:2.50)A.双引号中出现的宏名不替换B.使用宏定义可以嵌套C.宏定义仅仅是符号替换D.宏名必须用大写字母表示37.设有定义:char *c;,以下选项中能够使字符型指针 c 正确指向一个字符串的是_。(分数:2.50)A.char str=“string“;c=str;B.scanf(“%s“,c);C.c=getchar();D.char str=“string“;
16、strcpy(“c,str“)38.有以下程序: #includestdio.h #includestring.h struct A int a;char b10;double c; void f(struct A *t); main() struct A a=1001,“ZhangDa“,1098.0; f(printf(“%d,%s,%6.1f/n“,a.a,a.b,a.c); void f(struct A *t) t-a=1002;strcpy(t-b,“ChangRong“);t-c=1202.0; 程序运行后的输出结果是_。(分数:2.50)A.1001,zhangDa,1098.
17、0B.1002,ChangRong,1202.0C.1001,ChangRong,1098.0D.1002,zhangDa,1202.039.下述程序的输出结果是_。 #includestdio.h void main() char a=1,b=2; char c=ab2; printf(“/n%d“,c); (分数:2.50)A.9B.10C.12D.240.已知一个文件中存放若干工人档案记录,其数据结构如下: struct a char number100; int age; float p6; ; 定义一个数组:struct a b10; 假定文件已正确打开,不能正确地从文件中读入 10
18、 名工人数据到数组 b 中的是_。(分数:2.50)A.fread(b,sizeof(struct a),10,fp);B.for(i=0;i10;i+)fread(bi,sizeof(struct a),1,fp);C.for(i=0;i10;i+)fread(b+i,sizeof(struct a),1,fp);D.for(i=0;i5;i+=2)fread(b+i,sezeof(struct a),2,fp);二级 C 语言-217 答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:40,分数:100.00)1.算法的空间复杂度是指_。(分数:2.50)A.算法程序
19、的长度B.算法程序中的指令条数C.算法程序所占的存储空间D.算法执行过程中所需要的存储空间 解析:解析 算法的空间复杂度是指执行这个算法所需要的内存空间。一个算法所占用的存储空间包括算法程序所占的空间、输入的初始数据所占的存储空间以及算法执行中所需要的额外空间。其中额外空间包括算法程序执行过程中的工作单元以及某种数据结构所需要的附加存储空间。如果额外空间量相对于问题规模来说是常数,则称该算法是原地工作的。在许多实际问题中,为了减少算法所占的存储空间,通常采用压缩存储技术,以便尽量减少不必要的额外空间。2.下列叙述中正确的是_。(分数:2.50)A.一个逻辑数据结构只能有一种存储结构B.逻辑结构
20、属于线性结构,存储结构属于非线性结构C.一个逻辑数据结构可以有多种存储结构,且各种存储结构不影响数据处理的效率D.一个逻辑数据结构可以有多种存储结构,且各种存储结构影响数据处理的效率 解析:解析 数据的存储结构是指数据的逻辑结构在计算机存储空间中的存放形式,一种数据结构可以根据需要采用不同的存储结构,常用的存储结构有顺序和链式结构。采用不同的存储结构,其处理的效率是不同的。3.下列关于类、对象、属性和方法的叙述中,错误的是_。(分数:2.50)A.类是对一类具有相同的属性和方法对象的描述B.属性用于描述对象的状态C.方法用于表示对象的行为D.基于同一个类产生的两个对象不可以分别设置自己的属性值
21、 解析:解析 类是对一类具有相同的属性和方法对象的描述,属性用于描述对象的状态,方法用于表示对象的行为,基于同一个类产生的两个对象是可以分别设置自己的属性值。4.在软件开发中,需求分析阶段产生的主要文档是_。(分数:2.50)A.数据字典B.详细设计说明书C.数据流图说明书D.软件需求规格说明书 解析:解析 需求分析的最终结果是生成软件需求规格说明书,可以为用户、分析人员和设计人员之间的交流提供方便。5.数据库设计的四个阶段是:需求分析、概念设计、逻辑设计和_。(分数:2.50)A.编码设计B.测试阶段C.运行阶段D.物理设计 解析:解析 数据库设计目前一般采用生命周期法,即将整个数据库应用系
22、统的开分解成目标独立的若干阶段,它们是:需求分析阶段、概念设计阶段、逻辑设计阶段、物理设计阶段、编码阶段、测试阶段、运行阶段、进一步修改阶段。在数据库设计中采用上面几个阶段中的前四个阶段,并且重点以数据结构和模型设计为主线。6.在下列关系运算中,不改变关系表中的属性个数但能减少元组个数的是_。(分数:2.50)A并B交 C.投影D除解析:解析 关系 R 与 S 经交运算后所得到的关系是由那些既在 R 内又在 S 内的有序组所组成,记为RS,交运算不改变关系表中的属性个数但能减少元组个数。7.下列叙述中,正确的是_。(分数:2.50)A.软件交付使用后还需要进行维护 B.软件一旦交付使用就不需要
23、再进行维护C.软件交付使用后其生命周期就结束D.软件维护是指修复程序中被破坏的指令解析:解析 软件的运行和维护是指将已交付的软件投入运行,并在运行使用中不断地维护,根据新提出的需求进行必要而且可能的扩充和删改。而软件生命周期是指软件产品从提出、实现、使用维护到停止使用退役的过程。8.设一棵满二叉树共有 15 个结点,则在该满二叉树中的叶子结点数为_。(分数:2.50)A.7B.8 C.9D.10解析:解析 在具有 n 个结点的满二叉树,其非叶子结点数为 int(n/2),而叶子结点数等于总结点数减去非叶子结点数。本题 n=15,故非叶子结点数等于 int(15/2)=7,叶子结点数等于 15-
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 语言 217 答案 解析 DOC
