




已阅读5页,还剩54页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
全国计算机等级考试二级C语言,真题讲解,1,一、选择题,2,2020/6/9,下列叙述中正确的是:A、循环队列是队列的一种顺序存储结构B、循环队列是队列的一种链式存储结构C、循环队列是非线性结构D、循环队列是一直逻辑结构,A为了充分利用存储空间,可以把顺序队列看成一个环状空间,即把顺序队列的头尾指针相连,这样的队列称之为循环队列。是对顺序队列的改进,故循环队列是队列的一种顺序存储结构,3,下列叙述中正确的是A、栈是一种先进先出的线性表B、队列是一种后进先出的线性表C、栈和队列都是非线性结构D、以上三种说法都不对,栈是一种后进先出的线性表队列是一种先进先出的线性表,二者均是线性结构,答案为选项D。,4,一棵二叉树共有25个节点,其中5个是子节点,那么度为1的节点数为A、4B、6C、10D、16,二叉树的性质3,度为0的结点数(即叶子结点数)=度为2的结点数+1。题中叶子结点数为5个,利用性质3可计算出度为2的结点数为4个。二叉树只有三种结点:度为0的、度为1的、度为2的,总数为25个,所以度为1的结点数即为25-5-4=16个,所以为D。,5,在下列模式中,能够给出数据库物理存储结构与物理存取方法的是A、内模式B、外模式C、概念模式D、逻辑模式,内模式也称存储模式,它是数据物理结构和存储方式的描述,是数据在数据库内部的表示方式对应于物理级,它是数据库中全体数据的内部表示或底层描述,是数据库最低一级的逻辑描述。选项A正确。,6,在一个关系中,候选关键字可以有多个且在任何关系中至少有一个关键字。所以在满足数据完整性约束的条件下,一个关系应该有一个或多个候选关键字,选项D正确。,在满足实体完整性约束的条件下一个关系中可以没有候选关键词一个关系中只能有一个候选关键词一个关系中必须有多个候选关键词一个关系中应该有一个或者多个候选关键词,7,2020/6/9,R和S的差是由属于R但不属于S的元组组成的集合根据本题关系R和关系S运算前后的变化,可以看出此处进行的是关系运算的差运算,有三个关系R、S和T如下:,8,2020/6/9,软件生命周期-提出、实现、使用、维护到停止使用(退役)软件生命周期三个阶段-软件定义、软件开发及软件运行维护软件生命周期的主要活动阶段是可行性研究与计划制定、需求分析、软件设计、软件实现、软件测试、运行和维护。软件生命周期不包括市场调研。,软件生命周期中的活动不包括A、软件维护B、市场调研C、软件测试D、需求分析,9,2020/6/9,需求分析是对待开发软件提出的需求进行分析并给出详细的定义。主要工作是编写软件需求规格说明书及用户手册。需求分析的任务是导出目标系统的逻辑模型,解决“做什么”的问题。制定软件集成测试计划是软件设计阶段需要完成的任务,下面不属于需求分析阶段任务的是A、确定软件系统的功能需求B、确定软件系统的系统的系能需求B、制定软件集成测试计划D、需求规格说明书审评,10,2020/6/9,黑盒测试-功能测试或数据驱动测试测试着眼于程序外部结构、不考虑内部逻辑结构主要针对软件界面和软件功能进行测试。,在黑盒测试方式中,设计测试用例的主要根据是A、程序外部功能B、程序内部逻辑C、程序数据结构D、程序流程图,11,2020/6/9,软件设计包括概要设计和详细设计软件详细设计-程序流程图(PDF)和PAD(问题分析图)是过程设计的常用工具数据流图(DFD图)是软件定义阶段结构化分析方法常用的工具。,在软件设计中不使用的工具是A、系统结构图B、程序流程图C、PAD图D、数据流图(DFD图),12,2020/6/9,简单程序设计的步骤:首先要确定算法和数据结构然后编码、调试最后整理相关文档。,针对简单程序设计,以下叙述的实施步骤正确的是A、确定算法和数据结构、编码、调试、整理文档B、编码、确定算法和数据结构、调试、整理文档C、整理文档、确定算法和数据结构、编码、调试D、确定算法和数据结构、调试、编码、整理文档,13,2020/6/9,实型数据在内存中存储的二进制位数是有限的例如float型数据在内存中有24位二进制尾数而一个十进制实数转化为二进制实数时,其有效数字位数有可能会超过尾数的存储长度,从而导致有效数字丢失而产生误差。,关于C语言中数的表示,以下叙述正确的是A、只有整型数在允许范围内能精确无误的表示,实型数会有误差B、只要在在允许范围内整型和实型都能精确表示C、只有实型数在允许范围内能精确无误的表示,整型数会有误差D、只有八进制表示的数在不会有误差,14,2020/6/9,一个正确的算法可以有零个或者多个输入,必须有一个或者多个输出,以下关于算法叙述错误的是A、算法可以用伪代码、流程图等多种形式来描述B、一个正确的算法必须有输入C、一个正确的算法必须有输出D、用流程图可以描述的算法可以用任何一种计算机高级语言编写成程序代码,15,2020/6/9,一个C程序有且只有一个主函数main()。一个C程序可以包含多个不同名字的子函数C程序在书写时没有严格的缩进要求。,以下叙述错误的是A、一个C程序可以包含多个不同名的函数B、一个C程序只能有一个主函数C、C程序在书写时,有严格的缩进要求,否则不能编译通过D、C程序的主函数必须用main作为函数名,16,2020/6/9,在输入格式中定义好了”%c%c”,其中没有任何符号,所以中间不能加任何字符,包含不能加逗号、回车和空格,因为这些也算是字符。,设有以下语句Charch1,ch2,scanf(”%c%c”,若要为变量ch1和ch2分别输入字符A和B,正确的输入形式应该是A、A和B之间用逗号间隔B、A和B之间不能有任何间隔符C、A和B之间可以用回车间隔D、A和B之间用空格间隔,17,2020/6/9,转义字符,即反斜杠加数字或字母的形式(例如n是换行符),转义字符本身就是一个字符。C的X后面是十六进制数数字不需要以0开头的,以0开头了,0所代表的意义是指八进制,例如01,是指八进制的1,八进制里是没有数字8和9的,所以09是错误的,同理,D项的019错了C以x开头代表了xff这个数是16进制,16进制里是有f的,数值上等于十进制里的15数字前什么都不加,例如A和B项,C语言默认为十进制。,以下选项中非法的字符常量是A、102B、65C、xffD、019,18,2020/6/9,1、首先执行a-=a-5,即a=a-(a-5)使得a的值为52、执行c=(a-=a-5)即将a的值5赋给变量c使得c的值也为5。3、执行下句逗号表达式中的a=b,把b的值0赋给a,此时a的值为04、执行b=b+4,使得b的值为4。最后输出。,有以下程序#includeMain()IntA=0,B=0,C=0;C=(A-=A-5);(A=B,B+=4);Printf(“%d,%d,%dn”,A,B,C)程序运行后输出的结果是A0,4,5B4,4,5C4,4,4D0,0,0,19,2020/6/9,+x表示先将x值加1后再用,x+表示先使用x值,用后加1,所以本题中ABC选项都会输出x+1的值,只有D选项会输出x值。,设变量均已正确定义并且赋值,以下与其他三组输出结构不同的一组语句是A、x+;printf(“%dn”,x);B、n=+x;printf(“%dn”,n);C、+x;printf(“%dn”,x);D、n=x+;printf(“%dn”,n);,20,2020/6/9,C语言中非0的值表示真,0表示假,以下选项中,能表示逻辑值“假”的是A1B0.000001C0D100.0,21,2020/6/9,判断条件中if(a+9)是先用后加,即a的值为9,所以条件不成立,但是a已经进行了自增1操作,a的值此时为10。执行else语句时,打印a-,是先用后减,所以先输出10,然后a的值变为9。,有以下程序#includeMain()inta;Scanf(“%d”,程序运行时键盘输入9,则输出的结构是A、10B11C9D8,22,2020/6/9,case分支后面如果没有break,那么就会顺序执行下面的case,直到遇到break跳出。第一次循环后s的值为3。第二次s的值为:s=s+3,s=s+4,即为10。第三次没有匹配成功直接执行default语句,s=s+4,所以s的值为14。,有以下程序#includeMain()ints=0,n;For(n=0;n3;n+)switch(s)case0;Case1;s+=1;Case2;s+=2;break;Case3;s+3;Case4;s+=4;printf(“%dn”,s);程序运行后的结果是A1,2,4B1,3,6C3,10,14D3,6,10,23,2020/6/9,本题中k初始值为-1,执行一次循环体,执行完后k值为0,不满足k0条件,推出循环,所以执行了一次。,若k是int类型变量,且有以下for语句For(k=-1;kx)fun(c-1);printf(“%c”,c);main()fun”z”;程序运行输出结果是AxyzBwxyzCzyxwDzyx,33,2020/6/9,for循环函数调用执行fun(3)是输出*,然后输出#,执行fun(4)时输出*,然后输出#,所以选项D)正确。,有以下函数#includeviodfunc(intn)inti;for(i=0;i=n;i+)printf(“*”);printf(“#”);main()func(3);printf(“?”);func(4);printf(“n”);程序运行输出结果是A*#?*#B*#?*#C*#?*#D*#?*#,34,2020/6/9,静态局部变量,静态局部变量属于静态存储方式,它具有以下特点:(1)静态局部变量在函数内定义,它的生存期为整个源程序。(2)静态局部变量只能在定义该变量的函数内使用该变量。退出该函数后,尽管该变量还继续存在,但不能使用它。,有以下函数#includeviodfun(int*s)staicintj=0;dosj=sj+sj+1;wihle(+j2);main()intk,a10=1,2,3,4,5;for(K+1;k3;k+)fun(a);for(K+1;k5;k+)printf(“%d”,ak);printf(“n”);程序运行输出结果是A12345B23445C34756D35745,35,2020/6/9,(3)允许对构造类静态局部量赋初值。若未赋以初值,则由系统自动赋以0值。(4)根据静态局部变量的特点,它是一种生存期为整个源文件的量。虽然离开定义它的函数后不能使用,但如再次调用定义它的函数时,它又可继续使用,而且保存了前次被调用后留下的值。,有以下函数#includeviodfun(int*s)staicintj=0;dosj=sj+sj+1;wihle(+j2);main()intk,a10=1,2,3,4,5;for(K+1;k3;k+)fun(a);for(K+1;k5;k+)printf(“%d”,ak);printf(“n”);程序运行输出结果是A12345B23445C34756D35745,36,2020/6/9,根据这个特点,函数第一次调用时,会将数组a变为35345,当第二次调用时,函数内的j值为2,所以会将数组a的第三个元素更改为7,所以最终结果为35745,选项D)正确。,有以下函数#includeviodfun(int*s)staicintj=0;dosj=sj+sj+1;wihle(+j2);main()intk,a10=1,2,3,4,5;for(K+1;kcolorCstd-colorD(*ptr).color,39,2020/6/9,结构体的用法,结构体数组存储了三个人的信息,x+2代表了指向第三个元素,所以输出name为Zhao。,有以下函数#includestructstuintmun;charname10;intage;viodfun(structstu*p)printf(“%sn”,p-name);mian()structstux3=01,”zhang”,20,02,”wang”,19,03,”zhao”,18;fun(x+2);程序运行输出结果是AzhangBzhaoCwangD19,40,2020/6/9,移位操作执行c=(a2)1语句时,首先是a左移两位,其等效于将a乘以4,得到48,然后将48左移一位,相当于是乘以2,所以结果为c=96,选项D正确。,有以下函数#includemian()inta=12,c;c=(a2)1;printf(“%dn”,c):程序运行输出结果是A3B50C2D96,41,2020/6/9,文件的操作函数ftell()用于得到文件位置指针当前位置相对于文件首的偏移字节数。在随机方式存取文件时,由于文件位置频繁的前后移动,程序不容易确定文件的当前位置。调用函数ftell()就能非常容易地确定文件的当前位置。不能写入数据,其他三个选项都可以向文件中写入。,以下函数不能用于向文件写入数据的是AftellBfwriteCfputcDfprintf,fwrite是写入用的函数,向文件写入一个数据块,fputc把一个字符写入指定的文件中,fprintf传送格式化输出到一个文件中,可用于打印机输出,42,2020/6/9,二、填空题,43,2020/6/9,在顺序表中删除一个元素,最坏情况是删除第一个元素,后面的(n-1)个元素均要向前移动,所以此处填n-1。,1、将长度为n的顺序存储在线性表中删除一个元素,最坏情况下需要移动表中的元素个数为()。,44,2020/6/9,可知此循环队列共30个空间,另外队尾指针rear的值小于队头指针front的值,所以利用公式可知此循环队列的元素个数为29。当rearfront时,元素个数rear-front;,设循环队列的存储空间为Q(1:3),初始状态为front=rear=30。现经过一系列入队与退队运算后,front=16,rear=15,则循环队列中有()个元素。,45,2020/6/9,数据操纵语言DML(DataManipulationLanguage)用户通过它可以实现对数据库的基本操作。例如,对表中数据的查询、插入、删除和修改。在DML中,应用程序可以对数据库作插、删、改、排、检等五种操作。,数据库管理系统提供的数据语言中,负责数据的增、删、改和查询的是()。,46,2020/6/9,实体与联系都可以表示成关系。,在将E-R图转换到关系模式时,实体和联系都可以表示成()。,47,2020/6/9,面向对象方法是一种基于对象模型的程序设计方法,包括面向对象分析、面向对象设计、面向对象编程,是目前应用范围最广的设计方法。其中对象模型包括六个要素:封装、抽象、模块化、层次结构、类、并发性。面向对象方法的主要特征是封装、继承和多态性,所以此空应填面向对象方法。,常见的软件工程方法有结构化方法和面向对象方法,类、继承以及多态性等概念属于()。,48,2020/6/9,scanf()函数是格式化输入函数,它从标准输入设备(键盘)读取输入的信息,其调用格式为:scanf(,),scanf(a=%d,b=%d,其中a%=9等价于a=a%9;结果为1,所以a+=a%=9等价于a=a+1,答案为2.,以下程序的输出结果是()。#includemian()inta=37;a+=a%=9;printf(“%dn”,a);,50,2020/6/9,a|b若a,b都为假,则a|b为假,其他都为真如果a为真时,则对b不进行真假所以对于c=a+|b+,因为a+时为真,b+不进行判断,b的值保持不变,b=2。,设a、b、c都是整型变量,如果a的值为1,b的值为2,则执行c=a+|b+;语句后,变量b的值是().,51,2020/6/9,k=nfor和while都是循环语句,可以实现相同的功能.。,有以下程序段s=1.0;for(k=1,k=n;k+)s=s+1.0(k*(k+1);printf(“%fn”,s);请填空,使以下程序段的功能与上面的程序段完全相同。s=1.0;k=1;while()s=s+1.0(k*(k+1);k=k+1;printf(“%fn”,s);,52,2020/6/9,第一次循环时a的值为0,b的值为0所以打印字符0。第二次循环时a的值为7,b的值为7,所以打印字符7。第三
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 押题宝典高校教师资格证之《高等教育心理学》试题及参考答案详解(典型题)
- 2025年数字人民币跨境支付跨行互通与清算体系建设报告
- 2025年学前教育机构师资管理创新与职业素养提升报告
- 邮政行业职业技能鉴定通关考试题库含完整答案详解(易错题)
- 2025年尾矿资源化利用与生态修复技术政策实施效果跟踪报告
- 2025年智能客服行业情感分析技术挑战与对策报告
- 2025产品二线市场总代理合同书
- 2025版新型复合材料围墙施工合作协议
- 2025版抹灰班组承包工程竣工结算合同
- 2025年度动产典当借款合同范本
- JJF 2216-2025电磁流量计在线校准规范
- 高处安装维护拆除作业培训
- 工厂防呆培训课件
- 消防联动调试方案
- 自动化仪表施工方案
- 图书管理员考试复习全书:试题及答案
- T-CECC 029.1-2024 数据分类分级指南 第1部分:医疗健康
- 污泥运输合同范本
- DBJ04T 289-2020 建筑工程施工安全资料管理标准
- 开学防自然灾害 反毒品安全主题班会 课件
- 运输车辆司机安全培训考试专项测试题及答案
评论
0/150
提交评论