ImageVerifierCode 换一换
格式:DOCX , 页数:23 ,大小:28.32KB ,
资源ID:29533448      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/29533448.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(计算机c二级复习题.docx)为本站会员(b****8)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

计算机c二级复习题.docx

1、计算机c二级复习题第三套一、选择题1. 下列叙述中正确的是_。A、线性表是线性结构B、栈与队列是非线性结构C、线性链表是非线性结构D、二叉树是线性结构 根据数据结构中各数据元素之间前后间关系的复杂程度,一般将数据结构分为两大类型:线性结构与非线性结构。 如果一个非空的数据结构满足下列两个条件:(1)有且只有一个根结点;(2)每一个结点最多有一个前件,也最多有一个后件。则称该数据结构为线性结构,又称线性表。 所以线性表、栈与队列、线性链表都是线性结构,而二叉树是非线性结构。本题答案是A。2. 下面概念中,不属于面向对象方法的是_。A、对象B、继承C、类D、过程调用 面向对象方法是一种运用对象、类

2、、封装、继承、多态和消息等概念来构造、测试、重构软件的方法。面向对象方法从对象出发,发展出对象,类,消息,继承等概念。 本题答案为D。3. 在关系数据库中,用来表示实体之间联系的是_。A、树结构B、网结构C、线性表D、二维表 在关系数据库中,用二维表来表示实体之间联系。 本题答案为D。4. 程序流程图(PFD)中的箭头代表的是_。A、数据流B、控制流C、调用关系D、组成关系 程序流程图(PFD)是一种传统的、应用广泛的软件过程设计表示工具,通常也称为程序框图,其箭头代表的是控制流。 本题答案为B。5. 在一棵二叉树上第5层的结点数最多是_。A、8B、16C、32D、15 根据二叉树的性质:二叉

3、树第i(i1)层上至多有2i-1个结点。得到第5层的结点数最多是16。 本题答案为B。6. 数据处理的最小单位是_。A、数据B、数据元素C、数据项D、数据结构 数据处理的最小单位是数据项;由若干数据项组成数据元素;而数据是指能够被计算机识别、存储和加工处理的信息载体;数据结构是指数据之间的相互关系和数据运算。 本题答案为C。7. 在下列选项中,哪个不是一个算法一般应该具有的基本特征_。A、确定性B、可行性C、无穷性D、拥有足够的情报 作为一个算法,一般应具有以下几个基本特征。 1、可行性 2、确定性 3、有穷性 4、拥有足够的情报 本题答案为C。8. 将E-R图转换到关系模式时,实体与联系都可

4、以表示成_A、属性B、关系C、键D、域 关系是由若干个不同的元组所组成,因此关系可视为元组的集合,将E-R图转换到关系模式时,实体与联系都可以表示成关系。 本题答案为B。9. 软件调试的目的是_。A、发现错误B、改正错误C、改善软件的性能D、挖掘软件的潜能 由程序调试的概念可知:程序调试活动由两部分组成,其一是根据错误的迹象确定程序中错误的确切性质、原因和位置。其二,对程序进行修改,排除这个错误。所以程序调试的目的就是诊断和改正程序中的错误。 本题答案为B。10. 在结构化方法中,软件功能分解属于下列软件开发中的_阶段。A、详细设计B、需求分析C、总体设计D、编程调试 总体设计过程通常由两个主

5、要阶段组成:系统设计,确定系统的具体实现方案;结构设计,确定软件结构。为确定软件结构,首先需要从实现角度把复杂的功能进一步分解。分析员结合算法描述仔细分析数据流图中的每个处理,如果一个处理的功能过分复杂,必须把它的功能适当地分解成一系列比较简单的功能。 本题答案为C。二、填空题1. 与结构化需求分析方法相对应的是_方法。标准答案为:结构化设计2. 面向对象的程序设计方法中涉及的对象是系统中用来描述客观事物的一个_。标准答案为:实体3. 顺序存储方法是把逻辑上相邻的结点存储在物理位置_的存储单元中。标准答案为:相邻4. 一个项目具有一个项目主管,一个项目主管可管理多个项目,则实体项目主管与实体项

6、目的联系属于_的联系。标准答案为:一对多 或 1对多 或 一对n 或 1:N 或 1:n 或 1:n 或 1:N 或 一对m 或 1:M 或 1:m 或 1:m 或 1:N5. 软件维护活动包括以下几类:改正性维护、适应性维护、_维护和预防性维护。标准答案为:完善性6. 有以下程序main() int n=0,m=1,x=2; if(!n) x-=1; if(m) x-=2; if(x) x-=3;printf(%dn,x);执行后输出的结果是_。标准答案为:-4 因为n=0,所以!n为真,执行x-=1;即x=x-1,因为x=2,所以x=x-1=2-1=1; m=1,为真,执行x-=2;即x=

7、x-2,由上得出x=1,所以x=x-2=1-2=-1;x=-1,为真,执行x-=3;即x=x-3,由上得出x=-1,所以x=x-3=-1-3=-4。7. 以下程序运行结果是_。#include typedef struct student char name10; long sno; float score;STU;main() STUa=Zhangsan,2001,95,b=Shangxian,2002,90,c=Anhua,2003,95,d,*p=&d;d=a;if(strcmp(a.name,b.name)0) d=b;if(strcmp(c.name,d.name)0) d=c;pr

8、intf(%ld %sn,d.sno,p-name);标准答案为:2002 Shangxianstrcmp()函数的功能是比较两个字符串的大小,因为a.name=Zhangsan,b.name=Shangxian,所以strcmp(a.name,b.name)0为真,执行d=b;此时d.name=Shangxian,接着比较c.name与d.name,因为c.name=Anhua,所以strcmp(c.name,d.name)0不成立,为假,不执行d=c;。所以d.name=Shangxian,d.sno=2002。8. 以下sstrcpy()函数实现字符串复制,即将t所指字符串复制到s所指内

9、存空间中,形成一个新字符串s。请填空。void sstrcpy(char *s,char *t) while(*s+=_);main() char str1100,str2=abcdefgh; sstrcpy(str1,str2); printf(%sn,str1);标准答案为:*t+要使sstrcpy()函数实现字符串复制,必须将t字符串中的每个字符逐个拷到s字符串中,所以可以使用*s=*t;s+;t+。或者可以写成*s+=*t+,本题只有一个空,可以填入*t+。9. 已知字符A的ASCII码值为65,以下语句的输出结果是_。char ch=B;printf(%c %dn,ch,ch);标准

10、答案为:B 66 printf函数的一般格式为 printf(格式控制,输出表列) 格式控制是用双引号括起来的字符串,也称转换控制字符串。 1、d格式符,用来输出十进制整数。 2、c格式符,用来输出一个字符。已知字符A的ASCII码值为65,则字符B的ASCII码值为66,所以本题输出结果为:B 6610. 下面rotate函数的功能是:将n行n列的矩阵A转置为A,例如: |1 2 3 4 | |5 6 7 8 | 当A=|9 10 11 12| |13 14 15 16| |1 5 9 13| |2 6 10 14|则A=|3 7 11 15| |4 8 12 16|请填空。#define

11、N 4void rotate(int a) int i,j,t;for(i=0;iN;i+) for(j=0;_;j+) t=aij; _; aji=t; 标准答案为:j=j 与 aij=aji将矩阵转置就是将行列数互换,即第二行第三列的数与第三行第二列的数进行互换。所以第一个空应当填入j1) return a0+f(&a1,n-1); else return a0;main() int aa3=1,2,3,s; s=f(&aa0,3); printf(%dn,s); 本题考查的是递归调用。aa3=1,2,3,n=3,满足条件n1,执行a0+f(&a1,n-1);后为1+f(&a1,2),此时

12、n=2,仍满足条件n1,继续调用a0+f(&a1,n-1);,因为此时传递的是a1的地址,这时的a0应当为原数组中的a1,即为2,执行a0+f(&a1,n-1);后为1+2+f(&a1,1),因为第二次调用后数组中的元素为2,3,所以此次的a1应当为3,调用后的a0为3。所以最后结果为1+2+3=6。12. 函数fun的功能是计算xn。double fun(double x,int n)int i; double y=1; for(i=1;i=n;i+) y=y*x; return y;主函数中已经正确定义m、a、b变量并赋值,并调用fun函数计算:m=a4+b4-(a+b)3。实现这一计算的

13、函数调用语句为_。标准答案为:fun(a,4)+fun(b,4)-fun(a+b),3) 或 fun(b,4)+fun(a,4)-fun(a+b),3);函数fun的功能是计算x的n次方,所以a的4次方的调用函数应当为fun(a,4),b的4次方的调用函数应当为fun(b,4),(a+b)的3次方的调用函数应当为fun(a+b),3),所以,实现m=a4+b4-(a+b)3这一计算的函数调用语句为:fun(a,4)+fun(b,4)-fun(a+b),3);。13. 以下程序给指针p分配三个double型动态内存单元,请填空。#include main() double *p; p=(doub

14、le*)malloc(_); p0=1.5; p1=2.5;p2=3.5; printf(%f%f%fn,p0,p1,p2);标准答案为:3*sizeof(double) 或 sizeof(double)*3 或 24malloc(size)在内存的动态存储区中分配一个长度为size的连续空间。此函数的值(即返回值)是一个指针,它的值是该分配域的起始地址。如果此函数未能成功地执行,则返回值为0。 本题中要求分配三个double型动态内存单元,所以size处应当为3*sizeof(double)。14. 以下sum函数的功能是计算下列级数之和。S=1+x+x2/2!+x3/3!+xn/n!请给函

15、数中的各变量正确赋初值。double sum(double x,int n) int i; double a,b,s; _ for(i=1;i=n;i+) a=a*x;b=b*i;s=s+a/b; return s;标准答案为:a=1.0;b=1.0;s=1.0; 或 a=1.0;s=1.0; b=1.0; 或 b=1.0;s=1.0; a=1.0; 或 s=1.0; a=1.0;b=1.0;各种数值型数据间进行混合运算时,不同类型的数据要先转换成同一类型,然后进行运算。如果一个数据是float型或double型,则另一数据要先转换为double型,结果为double型。第四套一、选择题1.

16、下列叙述中,不属于软件需求规格说明书的作用的是_。A、便于用户、开发人员进行理解和交流B、反映出用户问题的结构,可以作为软件开发工作的基础和依据C、作为确认测试和验收的依据D、便于开发人员进行需求分析 软件需求规格说明书(SRS,Software Requirement Specification)是需求分析阶段的最后成果,是软件开发中的重要文档之一。它有以下几个方面的作用: 便于用户、开发人员进行理解和交流; 反映出用户问题的结构,可以作为软件开发工作的基础和依据; 作为确认测试和验收的依据。本题答案为D。2. 面向对象的设计方法与传统的的面向过程的方法有本质不同,它的基本原理是_。A、模拟

17、现实世界中不同事物之间的联系B、强调模拟现实世界中的算法而不强调概念C、使用现实世界的概念抽象地思考问题从而自然地解决问题D、鼓励开发者在软件开发的绝大部分中都用实际领域的概念去思考 面向对象的设计方法与传统的的面向过程的方法有本质不同,它的基本原理是,使用现实世界的概念抽象地思考问题从而自然地解决问题。它强调模拟现实世界中的概念而不强调算法,它鼓励开发者在软件开发的绝大部分中都用应用领域的概念去思考。 本题答案为C。3. 按条件f对关系R进行选择,其关系代数表达式为_。A、B、C、f(R)D、f(R) 选择运算是一个一元运算,关系R通过选择运算(并由该运算给出所选择的逻辑条件)后仍为一个关系

18、。这个关系是由R中那些满足逻辑条件的元组所组成。如果关系的逻辑条件为f,则R满足f的选择运算可以写成:f(R)。本题答案为C。4. 在计算机中,算法是指_。A、查询方法B、加工方法C、解题方案的准确而完整的描述D、排序方法 计算机算法是指解题方案的准确而完整的描述,它有以下几个基本特征:可行性、确定性、有穷性和拥有足够的情报。本题答案为C。5. 用树形结构来表示实体之间联系的模型称为_A、关系模型B、层次模型C、网状模型D、数据模型 层次模型是最早发展出来的数据库模型。它的基本结构是树形结构,这种结构方式在现实世界中很普遍,如家族结构、行政组织机构,它们自顶向下、层次分明。本题答案为B6. 单

19、个用户使用的数据视图的描述称为_。A、外模式B、概念模式C、内模式D、存储模式 外模式是用户的数据视图,也就是用户所见到的数据模式;全局数据视图的描述称为概念模式,即数据库中全部数据的整体逻辑结构的描述;物理存储数据视图的描述称为内模式,即数据库在物理存储方面的描述;存储模式即为内模式。本题答案为A。7. 设有下列二叉树: 对此二叉树中序遍历的结果为_。A、ABCDEFB、DBEAFCC、ABDECFD、DEBFCA 所谓中序遍历是指在访问根结点、遍历左子树与遍历右子树这三者中,首先遍历左子树,然后访问根结点,最后遍历右子树;并且在遍历左、右子树时,仍然先遍历左子树,然后访问根结点,最后遍历右

20、子树。本题答案为B。8. 在单链表中,增加头结点的目的是_。A、方便运算的实现B、使单链表至少有一个结点C、标识表结点中首结点的位置D、说明单链表是线性表的链式存储实现 头结点不仅标识了表中首结点的位置,而且根据单链表(包含头结点)的结构,只要掌握了表头,就能够访问整个链表,因此增加头结点目的是为了便于运算的实现。本题答案为A。9. 软件开发的结构化生命周期方法将软件生命周期划分成_。A、定义、开发、运行维B、设计阶段、编程阶段、测试阶段C、总体设计、详细设计、编程调试D、需求分析、功能定义、系统设 通常,将软件产品从提出、实现、使用维护到停止使用退役的过程称为软件生命周期。它可以分为软件定义

21、、软件开发及软件运行维护三个阶段。本题答案为A。10. 在软件工程中,白箱测试法可用于测试程序的内部结构。此方法将程序看做是_。A、循环的集合B、地址的集合C、路径的集合D、目标的集合 软件的白盒测试方法是把测试对象看做一个打开的盒子,它允许测试人员利用程序内部的逻辑结构及有关信息,设计或选择测试用例,对程序所有逻辑路径进行测试。本题答案为C。二、填空题1. 在先左后右的原则下,根据访问根结点的次序,二叉树的遍历可以分为三种:前序遍历、_遍历和后序遍历。标准答案为:中序2. 如果一个工人可管理多个设施,而一个设施只被一个工人管理,则实体工人与实体设备之间存在_联系。标准答案为:一对多 或 1对

22、多 或 一对n 或 1:N 或 1:n 或 1:n 或 1:N 或 一对m 或 1:M 或 1:m 或 1:m 或 1:N实体之间的对应关系称为联系,它反映现实世界事物之间的相互关联。两个实体间的联系可以归结为三种类型:一对一联系表现为某一实体与另一实体一一对应相关联;一对多联系表现为某一实体与相关多个实体相关联;多对多联系表现为多个实体与相关多个实体相联系。3. 软件的需求分析阶段的工作,可以概括为四个方面:_、需求分析、编写需求规格说明书和需求评审。标准答案为:需求获取4. 数据结构包括数据的逻辑结构、数据的 _以及对数据的操作运算标准答案为:存储结构5. 数据字典是各类数据描述的集合,它

23、通常包括5个部分,即数据项、数据结构、数据流、_和处理过程。标准答案为:数据存储6. 以下程序从终端读入数据到数组中,统计其中正数的个数,并计算它们之和,请填空。main() int i,a20,sum,count; sum=count=0; for(i=0;i20;i+) scanf(%d,_ ); fro(i=0;i0) count+; sum+= _ ; printf(sum=%d,count=%dn,sum,count);标准答案为:&ai 与 ai 本题考查的是数组的输入输出。scanf的格式为:scanf(格式控制,地址表列),首先第一空要求填写的是地址,如果填a的话,虽然a也是地

24、址,但a表示a的首地址,那么scanf输入的数永远是存放到a0中去了,所以填a不正确,应该填&ai,这样才能保证将从键盘输入的数依次存入a中去。第二空要求填写的主要是求和功能,sum+=_相当于sum=sum+_,所以就应该是sum=sum+ai进行求和。7. 以下程序中, for循环体执行的次数是_。#define N 2#define M N+1#define K M+1*M/2main() int i; for(i=1;iK;i+) . .标准答案为:4 或 四 或 4次 或 四次本题考查的是宏定义。 解题过程:(1)首先计算出k的值 1)宏定义的M 带入K 2)表达式为:N+1+1*N

25、+1/2 3)将宏定义的N带入K 4)表达式为:2+1+1*2+1/2 5)从左到右计算的结果为:3+2+0=5(2)因为k=5所以循环4次。8. 以下程序运行后的输出结果是_。main() int x=1,y=0,a=0,b=0; switch(x) case 1:switch(y) case 0:a+; break; case 1:b+; break; case 2:a+;b+; break; printf(%d %dn,a,b);标准答案为:2 1 本题考查的是switch语句。 解题过程:(1)x=1则,switch(y)(2)因为y=0 所以:case 0:a+;break; 结果a

26、=1 (3)继续switch(x),case 2;结果 a=2,b=1(4)输出结果a=2,b=1又因输出格式两个%d之间是空格,所以输出的两个数字之间也必为空格。9. 以下程序运行后的输出结果是_。main()int a44=1,2,3,4,5,6,7,8,11,12,13,14,15,16,17,18; int i=0,j=0,s=0; while(i+4) if(i=2|i=4) continue; j=0; do s+= aij; j+; while(j4); printf(%dn,s);标准答案为:92 本题考查的是循环的嵌套。 解题过程:(1)当i=0时执行while 1)i4,i

27、=1 2)因为i=1,所以不执行continue 3)j赋值0 4)执行do while s=0+a10=5,j=1,因为j4,所以继续循环 s=5+a11=5+6=11,j=2,因为j4,所以继续循环 s=11+a12=11+7=18,j=3,因为j4,所以继续循环 s=18+a13=18+8,j=26,因为j=4,所以终止循环(2)当i=1时,i4执行while,i=2,因为i=2,所以执行continue,结束本次while循环(3)当i=2时,i4执行while,i=3 1)因为i=3,所以不执行continue 2)j赋值0 3)执行do while s=26 s=26+a30=26

28、+15=41,j=1,因为j4,所以继续循环 s=41+a31=41+16=57,j=2,因为j4,所以继续循环 s=57+a32=57+17=74,j=3,因为j4,所以继续循环 s=74+a33=74+18=92,j=4,因为j=4,所以终止循环(4)i=3时,i4执行while,i=4因为i=4,所以执行continue,结束本次循环(5)当i=4时,i=4结束while循环(6)结果输出s=92。10. 以下程序中,函数SumColumMin的功能是:求出M行N列二维数组每列元素中的最小值,并计算它们的和值。和值通过形参传回主函数输出。请填空。#define M 2#define N 4void SumColumMin(int aMN,int *sum) int i,j,k,s=0; for(i=0;iN;i+) k=0; for(j=1;jM;j+) if

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1