《计算机软件技术基础(第三版)》的课后答案
计算机软件技术基础所有题目答案自学.doc
数据结构习题答案 2 第一节概论 2 第二节线性表 5 第三节栈和队列16 第五节树19 第七节查找25 第八节排序29 操作系统练习题参考答案32数据结构习题答案第一节概论一、选择题1.要求同一逻辑结构的所有数据元素具有相同的特性,这意味着( )。
A.数据元素具有同一的特点~B.不仅数据元素包含的数据项的个数要相同,而且对应数据项的类型要一致 C.每个数据元素都一样 D.数据元素所包含的数据项的个数要相等2.数据结构是一门研究非数值计算的程序设计问题中计算机的( (1) )以及它们之间的( (2) )和运算的学科。
(1) ~A.操作对象 B.计算方法 C.逻辑存储 D.数据映像(2) A.结构~B.关系 C.运算 D.算法3.数据结构被形式地定义为(D,R),其中D是( (1) )的有限集合,R是D上( (2) )的有限集合。
(1) A.算法~B.数据元素 C.数据操作 D.逻辑结构(2)A.操作 B.映像 C.存储~D.关系4.在数据结构中,从逻辑上可以把数据结构分为( )。
A.动态结构和静态结构 B.紧凑结构和非紧凑结构~C.线性结构和非线性结构 D.内部结构和外部结构5.线性表的顺序存储结构是一种( )的存储结构。
~A.随机存取 B.顺序存取 C.索引存取 D.Hash存取6.算法分析的目的是( )。
A.找出数据结构的合理性 B.研究算法中的输入和输出的关系~C.分析算法的效率以求改进D.分析算法的易懂性和文档性7.计算机算法指的是( (1) ),它必须具备输入、输出和( (2) )等五个特征。
(1) A.计算方法 B.排序方法~C.解决某一问题的有限运算序列 D.调度方法(2) A.可行性、可移植性和可扩充性~B.可行性、确定性和有穷性 C.确定性,有穷性和稳定性 D.易读性、稳定性和安全性8.线性表若采用链表存储结构,要求内存中可用存储单元的地址( )。
A.必须是连续的 B.部分必须是连续的 C.一定是不连续的~D.连续不连续都可以9.在以下的叙述中,正确的是( )。
最新计算机软件技术基础(第三版)习题答案
软件:是指计算机程序、方法、规则的文档以及在计算机上运行它时所必须的数据。
计算机软件一般分为系统软件和应用软件。
1.8软件技术发展的几个阶段各有什么特点?它与硬件的关系如何?
第一阶段:高级语言阶段
特点:这一时期,编译技术代表了整个软件技术,软件工作者追求的主要目的是设计和实现在控制结构和数据结构方面表现能力强的高级语言。但在这一时期内,编译系统主要是靠手工编制,自动化程度很低。
信息和数据的关系可以归结为:
1.信息是有一定含义的数据。
2.信息是经过加工(处理)后的数据。
3.信息是对决策有价值的数据。
1.2信息有哪些基本属性?
z信息的基本属性有:
1.事实性。
2.等级性。
3.可压缩性。
4.可扩散性。
5.可传输性。
6.共享性。
7.增值性和再生性。
8.转换性。
1.3计算机的主要特点是什么?
第一章
1.1什么是信息?信息与数据的区别和联系在何处?
信息定义之一:信息是现实世界中存在的客观实体、现象、关系进行描述的数据。
信息定义之二:信息是经过加工后并对实体的行为产生影响的数据。
与数据的区别和联系:
数据定义:数据是现实世界客观存在的实体或事物的属性值,即指人们听到的事实和看到的景象。
我们把这些数据收集起来,经过处理后,即得到人们需要的信息。
9
POS
1
4
7
10
12
13
14
15
16
NUM
3
3
3
2
1
1
1
1
4
2.27试说明树与二叉树有何不同?为何要将一般树转换为二叉树?
《计算机软件技术基础》习题及参考答案
4.以下数据结构中不属于线性数据结构的是______。
A. 队列 B. 线性表 C . 二叉树 D. 栈
5.在计算机中,算法是指______。
A. 查询方法 B. 加工方法 C. 解题方案的准确而完整的描述 D. 排序方法
6.在下列选项中,哪个不是一个算法一般应该具有的基本特征______。
B. 随机存取的存储结构、顺序存取的存储结构
C. 随机存取的存储结构、随机存取的存储结构
D. 任意存取的存储结构、任意存取的存储结构
14.下列关于栈的描述中错误的是。
A.栈是先进后出的线性表B.栈只能顺序存储
C.栈具有记忆作用D.对栈的插入和删除操作中,不需要改变栈底指针
15.栈底至栈顶依次存放元素A、B、C、D,在第五个元素E入栈前,栈中元素可以出栈,则出栈序列可能是______。
A. 程序的规模 B. 程序的易读性 C. 程序的执行效率 D. 程序的可移植性
30.对建立良好的程序设计风格,下面描述正确的是______。
A. 程序应简单、清晰、可读性好 B. 符号名的命名要符合语法
C. 充分考虑程序的执行效率 D. 程序的注释可有可无
31.下面对对象概念描述错误的是______。
A. 任何对象都必须有继承性 B. 对象是属性和方法的封装体
C. 对象间的通讯靠消息传递 D. 操作是对象的动态性属性
32.在面向对象方法中,一个对象请求另一对象为其服务的方式是通过发送______。
A. 调用语句 B. 命令 C. 口令 D. 消息
33.面向对象的设计方法与传统的的面向过程的方法有本质不同,它的基本原理是______。
《计算机软件技术基础》参考答案A.doc
《计算机软件技术基础》参考答案A一、单项选择题(每空1分,共50分)1-5 CBCBD 6-10 ADDCB11-15 ACABB 16-20 BLJCI21-25 CCABC 26-30 BADAB31-35 BCDBA 36-40 DDCDA41-45 DDCAC 46-50 BBCAB评分标准:本题每空1分,多选、少选、错选均不得分。
二、本题10分(1) v != NULL或v(2) x > v->val 或x != v->val(3) p->next(4) u->next(5) head->next评分标准:本题10分,每空2分,在(3)-(5)中未写出next扣1分三、本题10分(1) A!=NULL && B!=NULL(2) A->data==B->data(3) B=B->next;(4) A!=NULL(5) last->next=NULL;评分标准:本题10分,每空2分,在(2)中未写出data扣1分,在(3)和(5)中未写出next扣1分四、本题10分解:(1) A、B、C三个进程之间存在互斥的制约关系。
因为打印机属于临界资源,必须一个进程使用完之后另一个进程才能使用。
(2)mutex:用于互斥的信号量,初值为1。
各进程的代码如下:进程A 进程B 进程C... … ...... … ...P(mutex) P(mutex) P(mutex)申请打印机申请打印机申请打印机使用打印机使用打印机使用打印机V(mutex) V(mutex) V(mutex)… … …评分标准:本题10分,(1)题3分,(2)题7分,其中给出信号量含义和初值1分,三个进程代码各2分五、本题10分解:FIFO淘汰算法:内存块为3时,缺页中断(或称缺页次数、页面故障)为9;内存块为4时,缺页中断为10。
LRU淘汰算法:内存块为3时,缺页中断为10评分标准:本题10分,FIFO淘汰算法两种情况各3分,LRU淘汰算法1分,要求有分析过程六、本题10分解:段式存储管理的地址转换过程为:(1)根据逻辑地址中的段号查段表的相应栏目;(2)根据段内地址<段长度,检查地址是否越界;(3)若不越界,则绝对地址=该段的主存起始地址+段内地址。
计算机软件技术基础 第三版 课后习题答案
信息与数据信息是人们对某种事物的理解,通常可以是一件事情、一种状况或者是基于研究和经验所获得的知识。
数据是信息的表达。
例如,在线书店必须记录图书的书名、作者、客户、订单、书籍评论、书籍版本、送货等非常多的信息。
不同的用户所要保存和使用的数据各不相同,具体应该保存哪些数据由业务需求决定,保存数据的目的是使业务的运作更有效。
在任何数据库中,一般都保存有两种类型的数据:∙静态的,或者是历史的数据。
∙动态的,或者是事务性的数据。
文件系统最早用计算机实现对数据的管理是使用文件方式进行的,然而,文件的组织结构往往与生成该文件的程序有关,其他人要共享该文件,就必须要熟悉文件的格式等信息。
这为共享信息带来了诸多不便。
通过文件共享数据,还有一致性修改的问题,即如果文件结构被修改了,则共享者的程序也要相应地做修改,否则就会出错。
数据以文件形式保存,不仅使读文件的程序可以多次使用,而且其他程序只要知道数据格式和组织方式也可以使用,这就叫做数据资源共享。
商业应用中数据共享是必须的。
数据库系统信息共享和信息的易维护性是信息管理发展的必然要求。
为了解决这些问题,产生了数据库技术。
数据库技术的发展主要是用来克服文件系统的缺陷,克服这些缺陷主要是在应用程序和数据库之间增加了一个功能强大的软件——DBMS。
下图说明了在数据库系统中,数据库用户、数据库应用程序及数据库管理系统之间的关系。
用户与数据库应用程序交互,数据库应用程序与DBMS交互,由DBMS负责访问数据库中的数据。
也就是应用程序不直接与数据库打交道。
而在文件处理系统中,应用程序是直接访问存储数据的文件的。
这个改变非常重要,它使得编程工作变得非常简单,因为应用程序不再需要关心数据的记录结构和物理存储方式。
这样,开发人员就可以将注意力集中在如何满足用户的需要上,而不必集中在计算机系统如何组织数据的问题上。
从上述分析可以看到数据库具有如下特点:∙数据是集成的∙数据重复少∙程序与数据相对独立∙容易提供符合用户不同要求的信息提取方式∙易于提供安全保障9.2 数据模型模型是指明事物本质的方法,是对事物、现象、过程等客观系统的简化描述,是理解系统的思维工具。
《计算机软件技术基础》课后题答案
数据结构习题答案第一节概论一、选择题1.要求同一逻辑结构的所有数据元素具有相同的特性,这意味着( )。
A.数据元素具有同一的特点 *B.不仅数据元素包含的数据项的个数要相同,而且对应数据项的类型要一致 C.每个数据元素都一样 D.数据元素所包含的数据项的个数要相等2.数据结构是一门研究非数值计算的程序设计问题中计算机的( (1) )以及它们之间的( (2) )和运算的学科。
(1) A.操作对象 B.计算方法 *C.物理存储 D.数据映像(2) A.结构 *B.关系 C.运算 D.算法3.数据结构被形式地定义为(D,R),其中D是( (1) )的有限集合,R是D上( (2) )的有限集合。
(1) A.算法 *B.数据元素 C.数据操作 D.逻辑结构(2)A.操作 B.映像 C.存储 *D.关系4.在数据结构中,从逻辑上可以把数据结构分为( )。
A.动态结构和静态结构 B.紧凑结构和非紧凑结构 *C.线性结构和非线性结构 D.内部结构和外部结构5.线性表的顺序存储结构是一种( )的存储结构。
*A.随机存取 B.顺序存取 C.索引存取 D.Hash存取6.算法分析的目的是( )。
A.找出数据结构的合理性 B.研究算法中的输入和输出的关系 *C.分析算法的效率以求改进 D.分析算法的易懂性和文档性7.计算机算法指的是( (1) ),它必须具备输入、输出和( (2) )等五个特征。
(1) A.计算方法 B.排序方法 *C.解决某一问题的有限运算序列D.调度方法(2) A.可行性、可移植性和可扩充性 *B.可行性、确定性和有穷性 C.确定性,有穷性和稳定性 D.易读性、稳定性和安全性8.线性表若采用链表存储结构,要求内存中可用存储单元的地址( )。
A.必须是连续的 B.部分必须是连续的 C.一定是不连续的 *D.连续不连续都可以9.在以下的叙述中,正确的是( )。
A.线性表的线性存储结构优于链式存储结构 *B.二维数组是它的每个数据元素为一个线性表的线性表 C.栈的操作方式是先进先出 D.队列的操作方式是先进后出10.根据数据元素之间关系的不同特性,以下四类基本的逻辑结构反映了四类基本的数据组织形式,其中解释错误的是( )。
《计算机软件技术基础》试题答案
《计算机软件技术基础》试题答案一、选择题(每题5分,共30分)1. 下列关于软件工程的描述,错误的是(D)。
A. 软件工程是计算机科学的一个分支B. 软件工程的目标是提高软件质量和生产率C. 软件工程包括软件开发、维护和管理等方面D. 软件工程只关注大型软件的开发2. 下列哪种编程范式主要用于描述程序逻辑和数据的结构?(B)A. 面向过程编程B. 面向对象编程C. 函数式编程D. 逻辑编程3. 下列关于软件测试的描述,错误的是(C)。
A. 软件测试是软件开发过程中的重要环节B. 软件测试的目的是发现和修正软件中的错误C. 软件测试无需考虑软件的性能和稳定性D. 软件测试分为单元测试、集成测试和系统测试等阶段4. 下列关于软件维护的描述,正确的是(B)。
A. 软件维护是指对软件进行升级和优化B. 软件维护包括纠正软件错误、改进软件性能和增加新功能等C. 软件维护不需要考虑软件的可维护性D. 软件维护仅限于软件开发完成后5. 下列关于软件项目管理工具的描述,错误的是(D)。
A. 软件项目管理工具可以协助项目经理进行项目规划B. 软件项目管理工具可以协助项目经理进行项目监控C. 软件项目管理工具可以协助项目经理进行项目沟通D. 软件项目管理工具无法协助项目经理进行项目风险管理二、填空题(每题5分,共30分)1. 软件生命周期可以分为______、______、______、______和______五个阶段。
答案:需求分析、设计、实现、测试、维护2. 在面向对象编程中,一个对象通常包括______和______两部分。
答案:属性、方法3. 软件测试的目的是______、______和______。
答案:发现错误、修正错误、提高软件质量4. 软件维护的类型包括______、______、______和______。
答案:纠错性维护、适应性维护、完善性维护、预防性维护5. 软件项目管理工具主要包括______、______、______和______。
计算机软件技术基础(第三版) 课后习题答案较全
第一章信息与计算机1.1 什么是信息?信息与数据的区别和联系在何处?信息定义之一:信息是现实世界中存在的客观实体、现象、关系进行描述的数据。
信息定义之二:信息是经过加工后并对实体的行为产生影响的数据。
与数据的区别和联系:数据定义:数据是现实世界客观存在的实体或事物的属性值,即指人们听到的事实和看到的景象。
我们把这些数据收集起来,经过处理后,即得到人们需要的信息。
信息和数据的关系可以归结为: 1. 信息是有一定含义的数据。
2. 信息是经过加工(处理)后的数据。
3. 信息是对决策有价值的数据。
1.2 信息有哪些基本属性?信息的基本属性有: 1. 事实性。
2. 等级性。
3. 可压缩性。
4. 可扩散性。
5. 可传输性。
6. 共享性。
7. 增值性和再生性。
8. 转换性。
1.3 计算机的主要特点是什么?计算机最主要的特点是: 1. 高速自动的操作功能。
2. 具有记忆的能力。
3. 可以进行各种逻辑判断。
4. 精确高速的计算能力。
1.5 完整的计算机系统应该包括哪几部分?目前最完整的计算机系统学说认为由五部分组成: 1. 人员 2. 数据 3. 设备 4. 程序 5. 规程1.6 什么是计算机硬件?什么是计算机软件?硬件:泛指实际存在的物理设备,包括计算机本身及其外围设备。
微型计算机的硬件系统:主机、外存储器、输入设备、输出设备、微机的系统总线。
软件:是指计算机程序、方法、规则的文档以及在计算机上运行它时所必须的数据。
计算机软件一般分为系统软件和应用软件。
1.8 软件技术发展的几个阶段各有什么特点?它与硬件的关系如何?第一阶段:高级语言阶段特点:这一时期,编译技术代表了整个软件技术,软件工作者追求的主要目的是设计和实现在控制结构和数据结构方面表现能力强的高级语言。
但在这一时期内,编译系统主要是靠手工编制,自动化程度很低。
硬件关系:此时期计算机的硬件要求仅能用机器指令来编制可运行的程序。
第二阶段:结构程序设计阶段特点:在程序的正确性方面,提出了结构化程序设计思想使程序的可靠性提高了。
《计算机软件技术基础》复习答案
《计算机软件技术基础》复习答案1.线性表的链式存储结构与顺序存储结构相比优点是CDA.所有的操作算法实现简单B.便于随机存取C.便于插入和删除D.便于利用零散的存储器空间2.线性表是具有n个C的有限序列。
A.表元素B.字符C.数据元素D.数据项E.信息项3.若长度为n的线性表采用顺序存储结构,在其第I个位置插入一个新元素的算法的时间复杂度为C(1≤I≤n+1)A.O(0)B.O(1)2C.O(n)D.O(n)4.设A是一个线性表(a1,a2,,an),采用顺序存储结构,则在等概率的前提下,平均每插入一个元素需要移动的元素个数为B,平均每删除一个元素需要移动的元素个数为A;若元素插在ai与ai+1之间(0≤I≤n-1)的概率为元素所要移动的元素个数为C;2(ni),则平均每插入一个n(n1)n122n1C.3A.n23n1D.4B.5.下列函数中,按它们在n时的无穷大阶数,最大的是DA.lognB.nlognn/2C.2D.n!6.将下图所示的所指结点加到p所指的结点之后,其语句应为:Dne某tne某tpne某tA.->ne某t=p+1;p->ne某t=;B.(某p).ne某t=;(某).ne某t=(某p).ne某t;C.->ne某t=p->ne 某t;p->ne某t=->ne某t;D.->ne某t=p->ne某t;p->ne某t=;7.将两个各有n个元素的有序表归并为一个有序表时,其最少的比较次数是AA.nB.2n-1C.n-1D.2n8.下面的程序段是合并两个无头结点链表(ha和hb)为一个无头结点链表ha的过程,作为参数的两个链表都是按结点的data域由大到小链接的。
合并后新链表的结点仍按此方式链接。
请填写下述空框,使程序能正确运行。
#defineNULL0typedeftructnode{intdata;tructnode某ne某t;}node,linklittype;h=(linklittype某)malloc(izeof(linklittype));h->ne某t=NULL;p=h;while(ha!=NULL&&hb!=NULL)if(ha->data>=hb->data){/某较大的元素先插入某/p->ne某t=(1);p=(2);(3);}ele{p->ne某t=(4);p=(5);(6);}if(ha==NULL)(7);if(hb==NULL)(8);ha=h->ne某t;free(h);}参考答案:(1)ha(2)p->ne某t(3)ha=ha->ne某t(4)hb(5)p->ne某t(6)hb=hb->ne某t(7)p->ne某t=hb(8)p->ne某t=ha9.如果表A中所有元素(a1,a2,,an)与表B的一个顺序子表(bk,bk+1,bk+n-1)完全相同(即a1=bk,a2=bk+1,an=bk+n-1),则称表A包含在表B中。
计算机软件技术基础第三版课后习题答案
6.1 操作系统原理1 操作系统概论2 操作系统的特性3 操作系统的功能4 操作系统的类型5 进程管理6.2 常见的操作系统6.3 小节操作系统是加到计算机硬件上的第一层软件,它是直接操作计算机的硬件的软件,从而使计算机硬件的功能首次能够发挥出来。
一台纯粹由硬件构成的计算机(称之为“裸机”)在加载操作系统之后,就变成了一台与“裸机”大相径庭的“虚拟”的计算机。
其他的所有软件,如编译软件、数据库系统、软件开发工具等系统软件以及浏览器、字处理软件、办公软件等应用软件都是以操作系统为基础,运行于“虚拟” 机上的。
只有首先运行操作系统之后,才能运行其他软件。
操作系统是用户与计算机硬件设备之间的接口,用户通过操作系统操纵计算机硬件设备完成自己的工作。
计算机启动并加载操作系统之后,变成了一台“虚拟”(逻辑)的计算机。
用户看到的“计算机”是一台逻辑计算机,用户看到的“设备”是访问硬件设备的软件程序,是一种逻辑设备。
对逻辑设备的所有操作都被操作系统转换为对实际硬件设备的操作。
6.1.2 操作系统的特性1 并发性( Concurrence )在多任务操作系统中,“并发”是指宏观上,在一段所谓“并发”,是指两个或两个以上的事件在同一时间间隔中发生。
时间内,多个进程(简单地说,进程是程序的一次执行,将在后文中仔细讨论这个问题)在“同时”运行,多个计算机“事件”在“同时”发生。
如果计算机只有一个处理器(即CPU),该计算机在任何时刻都只能运行一个进程。
如果多个进程在极短的时间内交替执行,而使得用户察觉不到这种交替,就形成了一种宏观上的并发”也就是在一个人类可以感觉的事件间隔内,这些进程的执行效果好像是它们被同时执行一样,但进程之间仍是交替运行的。
CPU分时的并发”执行2 共享性(Shari ng)资源的共享是指计算机系统中的硬件资源和软件资源不仅仅为某一程序或者某一用户所独享,多个拥有授权的程序或用户都可以使用。
资源共享是为了提高计算机系统资源的利用率。
计算机软件技术基础课后答案
计算机软件技术基础课后答案【篇一:《计算机软件技术基础》复习题(含答案)】txt>1.线性表的链式存储结构与顺序存储结构相比优点是a. 所有的操作算法实现简单c. 便于插入和删除 b. 便于随机存取d. 便于利用零散的存储器空间2.线性表是具有n个的有限序列。
a. 表元素d. 数据项 b. 字符 c. 数据元素e. 信息项3.若长度为n的线性表采用顺序存储结构,在其第i个位置插入一个新元素的算法的时间复杂度为c 。
(1≤i≤n+1)a. o(0)b. o(1)2c. o(n) d. o(n)4.设a是一个线性表(a1,a2,?,an),采用顺序存储结构,则在等概率的前提下,平均每插入一个元素需要移动的元素个数为 b,平均每删除一个元素需要移动的元素个数为 a;若元素插在ai与ai+1之间(0≤i≤n-1)的概率为元素所要移动的元素个数为 c; 2(n?i),则平均每插入一个n(n?1) n?1 22n?1c.3a. n 23n?1d. 4b.5.下列函数中,按它们在n??时的无穷大阶数,最大的是 d。
a. lognb. nlognn/2c. 2 d. n!6.a. s-next=p+1; p-next=s;b. (*p).next=s; (*s).next=(*p).next;c. s-next=p-next; p-next=s-next;d. s-next=p-next; p-next=s;7.将两个各有n个元素的有序表归并为一个有序表时,其最少的比较次数是 a 。
a. nc. n-1b. 2n-1 d. 2n13.用单链表表示的链式队列的队头在链表的a 位置。
a. 链头b. 链尾c. 链中14.若用单链表表示队列,则应该选用。
a. 带尾指针的非循环链表b. 带尾指针的循环链表c. 带头指针的非循环链表d. 带头指针的循环链表15.在解决计算机主机与打印机之间速度不匹配问题时,通常设置一个打印数据缓冲区,主机将要输出的数据依次写入该缓冲区,而打印机则从该缓冲区中取出数据打印,先放入打印缓冲区的数据先被打印。
软件技术基础第三版课后习题答案
第二章程序设计语言计算机工作是执行相应程序,程序规定了执行的动作和动作的执行顺序。
程序的表达手段是程序设计语言。
程序设计语言是人- 机交换信息的媒体;是表达软件(程序)的工具;是人- 人交换信息的工具。
软件的开发和使用,协作开发、使用修改都要读程序,程序设计语言必须规范化和标准化。
程序设计语言是与计算机通信创造的语言,严格、小巧,没有二义性(语句执行只有一个解释)。
2.1 高级程序设计语言概述最初的语言是机器语言。
机器语言在内存中开辟两个区:数据区存放数据;指令区存放指令。
CPU 从指令区第一个地址开始逐条取出指令并释义执行,直到所有的指令都被执行完。
一般的指令格式2.2.2 高级语言程序的解释执行编译型语言由于可进行优化(有的编译器可作多次优化),目标码效率很高,是目前软件实现的主要方式。
语言编写的源程序,都需要进行编译、连接,才能生成可执行程序。
编译时花费时间但程序的执行效率提高。
对高级语言源程序采取解释执行的方式.解释执行需要有一个解释器(Interpreter ),它将源代码逐句读入。
先作词法分析,建立内部符号表;再作语法和语义分析,即以中间码建立语法树,并作类型检查。
完成检查后把每一语句压入执行堆栈,压入后立即解释执行。
操作系统的命令、BASIC 、VB 、Prolog 、LISP 、Java 、Java Script Post script2 .3 .1 变量、表达式、赋值使用符号常量,只需一次性改动其赋值就行了。
赋值和函数调用是程序语言改变变量的值的基本手段。
不同的语言所使用的赋值号并不完全相同,比如Pascal 语言的赋值号是“:=”,而在C 语言、Java 语言、VB 等语言中,赋值号是“ =”。
程序中的一条语句对应着计算机的一条命令(用一条或多条指令来实现)。
一个赋值语句就是一条赋值命令。
2.3.2 程序的控制结构程序约定自上向下自左向右地执行,即顺序地执行语句(或表达式)。
《计算机软件技术基础》标准答案及评分标准
《计算机软件技术基础》标准答案及评分标准
一、本题50分,每空1分,多选、少选、错选均不得分
(1) (2) (3) (4) (5) (1) (2) (3) (4) (5)
1 6
2 7
3 8
4 9 5
10
二、本题10分,每空2分,多选、少选、错选均不得分
(1) (2) (3) (4) (5)
三、本题10分,每空2分,将->写为.扣1分,在(3)-(5)中未写出next 扣1分
(1) (2) (3)
(4)
(5)
四、(本题10分) 地址:
关键字: 平均查找长度为7.110
17
1041312216==⨯+⨯+⨯+⨯=
ASL 。
评分标准:本题10分,关键字部分4分,比较次数部分4分,最后的平均查找长度2分。
对关键字和比较次数,若出现一处错误则扣0.5分,至本类分值扣完为止。
对平均查找长度若
能列写公式,而未得到正确的结果则给1分,若只有正确的计算结果则给2分。
五、本题10分,每小题5分
(1)
缺页中断率f= 75%
(2)
缺页中断率f= 75%
评分标准:每小题5分,每小题的缺页中断率得1分;表格中每列的数据正确性与其行顺序无关,但若有一个数据错误,则扣0.5分,至本小题表格的分值4分被扣完为止。
即若某一小题中只有4列数据完全无误,则此小题将得0分。
六、本题10分,每空2分,多选、少选、错选均不得分
(1) (2) (3) (4) (5)。
计算机软件技术基础所有题目答案自学.doc
数据结构习题答案 2 第一节概论 2 第二节线性表 5 第三节栈和队列16 第五节树19 第七节查找25 第八节排序29 操作系统练习题参考答案32数据结构习题答案第一节概论一、选择题1.要求同一逻辑结构的所有数据元素具有相同的特性,这意味着( )。
A.数据元素具有同一的特点~B.不仅数据元素包含的数据项的个数要相同,而且对应数据项的类型要一致 C.每个数据元素都一样 D.数据元素所包含的数据项的个数要相等2.数据结构是一门研究非数值计算的程序设计问题中计算机的( (1) )以及它们之间的( (2) )和运算的学科。
(1) ~A.操作对象 B.计算方法 C.逻辑存储 D.数据映像(2) A.结构~B.关系 C.运算 D.算法3.数据结构被形式地定义为(D,R),其中D是( (1) )的有限集合,R是D上( (2) )的有限集合。
(1) A.算法~B.数据元素 C.数据操作 D.逻辑结构(2)A.操作 B.映像 C.存储~D.关系4.在数据结构中,从逻辑上可以把数据结构分为( )。
A.动态结构和静态结构 B.紧凑结构和非紧凑结构~C.线性结构和非线性结构 D.内部结构和外部结构5.线性表的顺序存储结构是一种( )的存储结构。
~A.随机存取 B.顺序存取 C.索引存取 D.Hash存取6.算法分析的目的是( )。
A.找出数据结构的合理性 B.研究算法中的输入和输出的关系~C.分析算法的效率以求改进D.分析算法的易懂性和文档性7.计算机算法指的是( (1) ),它必须具备输入、输出和( (2) )等五个特征。
(1) A.计算方法 B.排序方法~C.解决某一问题的有限运算序列 D.调度方法(2) A.可行性、可移植性和可扩充性~B.可行性、确定性和有穷性 C.确定性,有穷性和稳定性 D.易读性、稳定性和安全性8.线性表若采用链表存储结构,要求内存中可用存储单元的地址( )。
A.必须是连续的 B.部分必须是连续的 C.一定是不连续的~D.连续不连续都可以9.在以下的叙述中,正确的是( )。
计算机软件技术基础(第三版)课后习题答案较全
计算机软件技术基础(第三版)课后习题答案较全第一章信息与计算机1.1 什么是信息?信息与数据的区别和联系在何处?信息定义之一:信息是现实世界中存在的客观实体、现象、关系进行描述的数据。
信息定义之二:信息是经过加工后并对实体的行为产生影响的数据。
与数据的区别和联系:数据定义:数据是现实世界客观存在的实体或事物的属性值,即指人们听到的事实和看到的景象。
我们把这些数据收集起来,经过处理后,即得到人们需要的信息。
信息和数据的关系可以归结为:1. 信息是有一定含义的数据。
2. 信息是经过加工(处理)后的数据。
3. 信息是对决策有价值的数据。
1.2 信息有哪些基本属性?信息的基本属性有: 1. 事实性。
2. 等级性。
3. 可压缩性。
4. 可扩散性。
5. 可传输性。
6. 共享性。
7. 增值性和再生性。
8. 转换性。
1.3 计算机的主要特点是什么?计算机最主要的特点是: 1. 高速自动的操作功能。
2. 具有记忆的能力。
3. 可以进行各种逻辑判断。
4. 精确高速的计算能力。
1.5 完整的计算机系统应该包括哪几部分?目前最完整的计算机系统学说认为由五部分组成: 1. 人员 2. 数据3. 设备 4. 程序 5. 规程1.6 什么是计算机硬件?什么是计算机软件?硬件:泛指实际存在的物理设备,包括计算机本身及其外围设备。
微型计算机的硬件系统:主机、外存储器、输入设备、输出设备、微机的系统总线。
软件:是指计算机程序、方法、规则的文档以及在计算机上运行它时所必须的数据。
计算机软件一般分为系统软件和应用软件。
1.8 软件技术发展的几个阶段各有什么特点?它与硬件的关系如何?第一阶段:高级语言阶段特点:这一时期,编译技术代表了整个软件技术,软件工作者追求的主要目的是设计和实现在控制结构和数据结构方面表现能力强的高级语言。
但在这一时期内,编译系统主要是靠手工编制,自动化程度很低。
硬件关系:此时期计算机的硬件要求仅能用机器指令来编制可运行的程序。
4软件技术基础 第三版 课后习题答案
第四章Visual C++环境及其应用软件开发一般是在某个操作系统平台之上进行的,平台提供了大量应用工具,这些工具为编程提供了极大的便利,使得编出的应用系统大为丰富。
有使用方便、清新悦目的用户界面;有计算结果的各种表达:表格、表单、图符、图像、图形、动画,甚至音频、视频等。
几十年来,各种支持应用的工具软件形成了当今计算机的应用文化。
对应用开发者而言,开发的应用程序也必须适应这种文化,而不单是编写核心计算的程序。
进行人机界面的设计时,要充分利用平台提供的测试、部署、通信、安装工具加速应用开发,并使开发的应用(程序)系统与各厂商提供的应用软件风格相似。
本章主要介绍程序开发环境。
4.1 应用(程序)系统的体系结构一个应用(程序)系统总是由多个程序模块组成。
过程式编程是函数/子例程、数据块;面向对象是类、包;基于构件编程是接口类、构件、连接件。
为了功能全、少编程,它们往往是共享的,能重用就重用。
而且大量重用经过实用考验的模块,应用程序更可靠。
模块的相互联系就形成体系结构(Architecture),就如同一个房子规定了它各个构件的位置,它们共同表现出这个房子的使用性能。
一般应用(程序)系统的体系结构如图4.1所示。
从逻辑上讲现代应用程序必须有为用户服务的模块,图中以小方块表示交互的用户输入和输出显示、报表软硬拷贝、保存文件、入库、安装等。
第二部分是业务服务模块,图中以小三角表示,即常说的这个(软件)程序该做什么核心计算。
可以是实现某个业务流程的各个模块,如民航订票系统的查询、订票、收费、出票各功能模块。
也可以是解决科学计算的高阶微分方程数值解的程序模块。
第三部分是数据服务的模块,图中以小圆圈表示。
它是与数据库交互的模块。
这里的数据库是广义的,包括文件库。
有些专用的科学计算的数据并不一定与其他应用有共享需求,作为文件保存为永久性数据,也叫入数据库。
但此时数据服务十分简单。
图中两个应用Application1和Application2共享若干模块,也有为自己开发的模块。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第一章1.1什么是信息?信息与数据的区别和联系在何处?信息定义之一:信息是现实世界中存在的客观实体、现象、关系进行描述的数据。
信息定义之二:信息是经过加工后并对实体的行为产生影响的数据。
与数据的区别和联系:数据定义:数据是现实世界客观存在的实体或事物的属性值,即指人们听到的事实和看到的景象。
我们把这些数据收集起来,经过处理后,即得到人们需要的信息。
信息和数据的关系可以归结为:1.信息是有一定含义的数据。
2.信息是经过加工(处理)后的数据。
3.信息是对决策有价值的数据。
1.2信息有哪些基本属性?信息的基本属性有:1.事实性。
2.等级性。
3.可压缩性。
4.可扩散性。
5.可传输性。
6.共享性。
7.增值性和再生性。
8.转换性。
1.3计算机的主要特点是什么?计算机最主要的特点是:1.高速自动的操作功能。
2.具有记忆的能力。
3.可以进行各种逻辑判断。
4.精确高速的计算能力。
1.5完整的计算机系统应该包括哪几部分?目前最完整的计算机系统学说认为由五部分组成:1.人员2.数据3.设备4.程序5.规程1.6什么是计算机硬件?什么是计算机软件?硬件:泛指实际存在的物理设备,包括计算机本身及其外围设备。
微型计算机的硬件系统:主机、外存储器、输入设备、输出设备、微机的系统总线。
软件:是指计算机程序、方法、规则的文档以及在计算机上运行它时所必须的数据。
计算机软件一般分为系统软件和应用软件。
1.8 软件技术发展的几个阶段各有什么特点?它与硬件的关系如何?第一阶段:高级语言阶段特点:这一时期,编译技术代表了整个软件技术,软件工作者追求的主要目的是设计和实现在控制结构和数据结构方面表现能力强的高级语言。
但在这一时期内,编译系统主要是靠手工编制,自动化程度很低。
硬件关系:此时期计算机的硬件要求仅能用机器指令来编制可运行的程序。
第二阶段:结构程序设计阶段特点:在程序的正确性方面,提出了结构化程序设计思想使程序的可靠性提高了。
程序设计方法论方面,提出由顶向下法和自底向上法。
使程序模块化,使问题的复杂性和人的思维统一起来了。
出现了软件生产管理。
硬件关系:磁盘问世,操作系统发展,非数值计算应用发展,通信设备完善,网络发展,集成电路发展等使软件复杂性增加产生软件危机,在此背景下发展了软件技术。
第三阶段:自动程序设计阶段特点:向集成化、一体化发展。
出现了软件开发环境。
程序设计基本方法进一步改进。
硬件关系:集成电路迅速发展以及高分辨率终端的出现,为个人计算机发展提供了条件,再加上人工智能、专家系统研究的发展,使程序设计进入成熟期。
第二章2.1 什么是数据结构?它对算法有什么影响?数据结构是指同一数据对象中各数据元素间存在的关系。
对算法是影响:算法的实现必须借助程序设计语言中提供的数据类型及其运算。
一个算法的效率往往与数据的表达形式有关,因此数据结构的选择对数据处理的效率起着至关重要的作用。
它是算法和程序设计的基本部分,它对程序的质量影响很大。
2.2何谓算法?它与程序有何区别?广义地说,为解决一个问题而采取的方法和步骤,就称为“算法”。
计算机算法是通过计算机能执行的算法语言来表达的。
和程序的区别:一个程序包括两个方面的内容:(1)、对数据的描述,即数据结构。
(2)、对操作的描述,即算法。
所以算法是程序的一个要素。
2.3 何谓频度,时间复杂度,空间复杂度?说明其含义。
频度:在某个算法中某个语句被重复执行的次数就是此语句的频度。
时间复杂度:是用来估算一个算法的执行时间的量,以算法中频度最大的语句来度量。
空间复杂度:指在算法中所需的辅助空间的单元,而不包括问题的原始数据占用的空间。
2.6 数据的存储结构主要有哪两种?它们之间的本质区别是什么?数据的存储结构:向量和链表。
本质区别:向量是连续存放的,其存储空间是静态分配的,以存放顺序来表达元素的前后件的关系。
链式存储结果不需要一组连续的存储单元,其数据元素可以分散存放在存储空间中,其元素关系由指针来指向。
2.16 试比较顺序表和链表的优缺点。
1. 线性表的长度是否固定方面:由于向量的存储空间是静态分配的,链表的存储空间是动态分配的,因此若表长不固定时采用线性链表较好。
2. 线性表的主要操作是什么:由于向量是连续存放的,所以适用于查找操作,不适用插入、删除操作。
由于线性链表只能顺序存取,所以适用于插入、删除操作,不适用于查找操作。
3. 采用的算法语言:线性链表要求所使用的语言工具提供指针类型变量。
2.17 试比较单向链表与双向链表的优缺点。
1. 单向链表只能单方向地寻找表中的结点,双向链表具有对称性,从表中某一给定的结点可随意向前或向后查找。
2. 在作插入、删除运算时,双向链表需同时修改两个方向上的指针,单向链表则简便些。
2.23 试画出表达式A*(B-D)/D+C**(E*F)执行过程中NS,OS 栈的变化情况。
B-D=T1 D/T1=T2 T2*A=T3 E*F=T4 T4**C=T52.26 用三元组和带行辅助向量形式表示下列稀疏矩阵:(1):⎥⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎢⎣⎡--000280000000910000000060000003110150220015 (2):⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎣⎡---300060200120000000070000040000000000200000001200040002000000304030050006001526000130008(1):三元组带行辅助向量2.27试说明树与二叉树有何不同?为何要将一般树转换为二叉树?树与二叉树区别:树是由n个(n>=0)结点组成的有限集合T,其中有且仅有一个结点称为根结点,在此类元素结点之间存在明显的分支和层次关系。
二叉树是一种特殊的树结构,每一个结点最多只有两个孩子,即最多只有两个分支。
为何要转换:一般树,树中结点次序没有要求,分支庞杂。
而二叉树,元素之间存在严谨的前后代关系,在对数据元素进行删除、查找、插入等运算时更加有效率。
2.28 将下列(题图2.3)的一般树化为二叉树。
题图2.3转换后:2.30 设一棵二叉树其中序和后序遍历为中序:BDCEAFHG后序:DECBHGFA画出这棵二叉树的逻辑结构,并写出先序遍历结果。
先序遍历:ABCDEFGH其逻辑结构如下:2.33 定一组权值W={8,2,5,3,2,17,4},画出由此生成的哈夫曼树。
设:8 2 5 3 2 17 4第三章3.1 操作系统的基本功能是什么?它包括哪些部分?基本功能:操作系统应该具有处理器管理,存储管理,设备管理和文件管理功能,同时,为了使用户能方便地使用机器,操作系统还应提供用户接口功能。
构成部分:(1).对CPU的使用进行管理的进程调度程序。
(2). 对内存分配进行管理的内存管理程序。
(3). 对输入输出设备进行管理的设备驱动程序。
(4). 对外存中信息进行管理的文件系统。
3.2 试说明虚拟机的概念以及实现的方法。
在裸机外面每增加一个软件层后就会变成一台功能更强的机器,我们通常把这种计算机系统称为虚拟机。
虚拟机的实现方法:在裸机上装上操作系统对机器进行首次扩展,再在操作系统的基础上增加其他软件,这样就可以实现“虚拟机”。
3.3通常操作系统有哪几种基本类型?各有什么特点及适用于何种场合?三大类:(1)多道批处理系统:计算机内存中同时可以存放多道作业,用户与作业之间没有交互作用,用户不能直接控制作业的运行。
此类系统一般用于计算中心等较大型的计算机系统中。
(2)分时系统:多个用户通过终端分享同一台计算机,并通过终端直接控制程序运行,进行人与机器之间的交互。
此类系统适用于程序的开发。
(3)实时系统:对外部发生的随机事件作出及时的响应,并对它进行处理。
此类系统一般用于工业控制系统或事物处理系统。
3.4试说明你所使用过的操作系统的类型和特点。
Windows系统:多用户多任务操作系统。
特点:全新的、友善的用户界面。
提供了功能强大的应用程序。
具有多任务并行处理能力,各种应用程序之间可以方便地进行切换和交换信息。
具有强大的内存管理能力,支持扩展内存功能,提高系统运行效率。
3.5解释名空间、作业地址空间和存储空间的关系以及逻辑地址和物理地址的区别。
存放源程序的空间称为名空间。
当汇编或编译程序将源程序转换成目标程序后,一个目标程序所占有的地址范围称为地址空间,这些地址的编号是相对于起始地址而定的,一般定起始位零,称为逻辑地址或相对地址。
存储空间是指当目标程序装入主存后占用的一系列物理单元的集合,这些单元编号称为物理地址或绝对地址。
3.6 什么是重定位?静态重定位和动态重定位的区别是什么?各举一例说明。
当用户程序要调入内存时,必须把相对地址转换为绝对地址,同时要包括对程序中与地址有关的指令进行修改,这一过程称为重定位。
静态重定位是在程序装入时进行,一般通过处理机中一对界地址寄存器来实现。
动态重定位是在程序执行过程中进行的,当处理器访问主存指令时由动态变换机构自动进行地址转换。
3.7 存储管理器的功能是什么?为什么要引入虚拟存储器的概念?虚存的容量由什么决定?存储管理的功能主要分为:内存分配、地址转换、存储保护和内存扩充。
虚拟存储器能提供给用户一个比实际内存大得多的存储空间,使用户在编制程序时可以不必考虑存储空间的限制。
虚存的容量受两个条件约束:指令中地址场长度的限制、外存储器容量的限制。
3.10 什么是作业、作业步和进程?作业是用户在一次算题过程中或一个事务处理中要求计算机系统所做的集合。
一个作业是由一系列有序的作业步所组成。
一个作业步运行的结果产生下一个作业步所需的文件。
进程可以看成是程序的一次执行,即是在指定内存区域的一组指令序列的执行过程。
3.11 处理器管理主要解决什么问题?在大型通用系统中,可能数百个批处理作业存放在磁盘中,又有数百个终端用户与主机联接,如何从这些作业中挑选一些作业进入主存运行,又如何在主存各进程间分配处理器,是操作系统资源管理的一个重要问题,处理器管理就是用来解决此问题的。
3.12 什么是进程的同步和互斥?什么是临界区?“同步”是指两个事件的发生存在某种时序上的关系,如果系统中有若干个进程要共同完成某一任务,那么它们相互之间必须协调配合。
“互斥”是指当多个进程要求共享系统中某些硬件或软件资源,而这些资源却又要求排它性使用时,这样往往引起由于多个进程竞争同一资源使运行结果出现问题。
如果在两个进程P1、P2中加入P、V操作后,可以实现对公用变量count的互斥使用。
其中P(s)、V(s)之间的程序段称为临界区。
3.15 进程间的通信可以由哪些方式进行?低级通信方式:P-V操作。
高级通信方式:直接通信、信箱通信。
3.16 死锁产生的必要条件是什么?死锁的预防、避免和检测各有什么不同?各举一种相应的方法。