《软件》课后习题答案

《软件》课后习题答案
《软件》课后习题答案

第一章

1.什么是程序,程序有哪些特性?

程序:是一个用计算机语言描述的某一问题的解决步骤,它的表示是静态的。

特性:静态与动态属性,由程序语言抽象的符号表达,是对数据施行算法的过程,是分层嵌套的。2.软件有哪些特性?

特性:功能、性能相对完备的程序系统,具有使用性能的软设备,软件是信息商品,易大批量生产、成本低,是极具竞争性的商品,投入的资金主要是人工费,是只有过时而无“磨损”的商品。

3.什么是群件,目前常见的群件产品有哪些?

群件:是近几年开发的一种基于电子邮件的应急系统软件,它拓

宽了电子邮件的的内涵,涵盖了很多通信协调功能。目前常见的群件产品有:IBM公司的lotus Note、Microsoft公司的Exchange Server 、Novell公司的Group Wise等

4.计算机的软件是由哪几部分组成的,各自的作用是什么?

软件由:软件程序(解题步骤)+数据(描述事物的属性和状态)+文档(功能性能的说明性信息)组成。

5.什么是程序开发环境,常见的开发环境有那些?

程序开发环境:即现在作用到的编程语言,一般以一个集成环境的形式出现。

此环境中包含了语言编辑器,调试工具,编译工具,运行工具,图标图像制作工具等。

6.常见的Internet工具有哪些?

Web服务器软件、web浏览器、文件传送工具FTP、远程访问工具Telnet、邮件软件、网络聊天、多媒体等。

7.操作系统的作用(功能)是什么?

1、处理器管理

2、存储器管理

3、设备管理

4、文件管理

5、作业管理。

8.文件系统足以支持程序运行,数据库的作用是什么?

克服文件系统的缺陷。

9.软件开发的核心是编制可运行的程序,还有比这跟重要的工作么?

系统分析和数据分析。

10.程序设计语言本身是软件么?

是,而且是系统软件。

第二章

1.程序设计语言有哪两种实现方式,各有什么优缺点?

方式一:编译(优:可进行优化,目标码效率很高。缺:费时)方式二:解释(优:可以逐句读入源代码,比较灵活,小巧。解释器不大,工作空间也不大,且能根据程序的执行情况决定下一步需做什么。缺:一句一句的难于优化,效率低)

2.结构化程序设计语言有那几种基本控制结构?

顺序、选择、循环。

3.为什么要引进过程,过程和函数的区别有哪些?

引进了过程或函数可以让程序语言更清晰,可以多次调用。使用过程还可以降低程序的复杂性,使程序结构变得清晰明了。过程是不带返回值,函数是带返回值。

4.什么是全局变量,什么是局部变量?

全局变量:出了程序便失去定义,作用范围,整个程序。

局部变量:局部的程序块中有定义。

5. 什么是指针变量?

指向数据的地址的变量。

6.过程参数传递的方式有哪几种,各有什么特点?

传值:优:很安全,不会改变全局变量的值。缺:占用双倍存储单元,传值时不能带回值。

引用:优:能带返回值,存储空间小。缺;局部有可能改变全局变量的值。

7.简述变量的生命期及变量的种类.

程序中变量的生命期随其声明时所在的程序块而异。程序执行完它的所有数据变量后均会失去意义。

种类:持久变量,全局变量,静态局变量,自动变量,循环控制变量。

8.简述面对对象程序设计语言的基本特点。

类和对象

9.到目前为止,程序设计语言一共分为4代,试简述每一代语言的特点并举出有代表性的语言。

把面向机器编程的第一代语言:机器码、汇编语言排除在外。第二代语言:早期的高级程序设计语言。第三代语言:结构化程序设计语言(面向算法过程的)。第四代语言:数据库查询语言(只描述程序应“做什么”,而不必编写“怎么做”的实现模块)

10.简述Internet环境编程语言的一些基本特性。

1、平台无关

2、编译—解释执行3更为纯粹的面向程序语言4、支持网络安全5、支持多线程6、接口作为类型7、支持网络上分布式应用。

11.简述程序分裂出过程(子例程)、过程/函数的型构和体的显示分离以及接口类和类分离对软件技术发展的影响。

12.为什么说Java的即时编译是当前编译技术的最新发展?

对于多次重复或耗时较长的段落进行编译后,作为模块暂存,下次遇到时则直接执行目标码。

第三章

1.算法、数据结构和程序

程序=算法+数据结构

2.什么是算法,它所包含的两个要素是什么?

算法:一个有穷规则的集合,规定了解决某段问题的运算序列。它是有穷的、确定的、能行的,并有0到多个1到多个输出。

所包含的两个要素:方法,步骤。

3.算法的控制结构有哪些形式?

算法的控制结构的形式:顺序、选择、循环。

4.算法的表述有哪几种方式?

自然语言、伪代码、流程图。

5.什么是数据结构,它所研究的内容包括几方面?

数据结构是相互有关联的数据元素的集合。

方面:算法、逻辑结构和物理结构,数据结构的图形表示。

6.线性和非线性数据结构的主要区别是什么,各包括哪些数据结构?

线性:栈、队、链表、顺序表。

非线性:树、图、文件。

7.试用类VC语言写出单链表的插入及删除算法。

8.一棵度为2的树与一棵二叉树有何区别?

度为2的树:树的最大结点的度为2

二叉树:不存在度大于2的结点.五种基本形态:空二叉树,仅有根节点的二叉树,左子树为空的二叉树,右子树为空的二叉树,左右子树均不为空的二叉数

10.已知某二叉树的前序遍历序列为ABDEGCFHIJ,中序遍历为DBGEAHFIJC,写出该二叉树后序遍历的序列DGEBHJIFCA

11.试用VC语言写出起泡排序的算法

#include

int sort(int n)

{ int i,j,temp;

for (i=1;i

for (j=0;j

if (a[j]>a[j+1]) {temp=a[j];a[j]=a[j+1];a[j+1]=temp;}}

int main(void)

{ int i,n;

scanf("%d",&n);

int *a=new int[n];

for (i=0;i

scanf("%d",&n);

sort(n);

for (i=0;i

printf("%d ",a[i]);

return 0;}

12.试分别说明堆栈、队列和数组之间的相同于不同点。

相同:都是线性。不同:堆栈只在一端操作。

第五章

1.什么是多媒体,它由哪些信息表示元素组成?

通过计算机技术,把文字,图形,图像,动画,音频,视频等信息表示元素集成起来而形成的一种新的数字化信息表示媒体。

2.多媒体有哪些特性?

集成性,数字化,时间相关性,交互性,数据量大

3.对于多媒体的应用,做了简单的讨论后,试再举出几个多媒体应用的例子

教育培训,演示系统,电子出版物,企业应用

4.什么是多媒体计算机系统,多媒体计算机与一般计算机的差别是什么?

多媒体计算机系统:能综合处理多种媒体信息,包括文字,图形,图像,音频,视频,动画等,使多种信息建立联系,并且具有交互性的计算机系统。

多媒体计算机有一般的计算机相比:处理的数据量大,各种媒体要综合处理。

5.用于多媒体计算机的外部设备有哪些,各有什么用途?

音频设备:实现模拟音频与数字音频之间的转换

视频设备: 存储光盘:

6.多媒体应用系统的制作过程与一般应用系统的制作有什么不同?

与传统的开发计算机应用程序方法不同,多媒体程序开发是一种现代计算机应用软件开发与创意相结合的崭新制作方式,也是人民正在实践与探索的研究课题。多媒体应用程序制作一般要经过项目的需求分析、脚本编写、软件结构设计、采集和制作多媒体素材、代码编写、运行测试等几个环节,最后才能完成一个多媒体应用程序的制作。

第六章

1.操作系统主要功能是什么?

1)处理器管理 2)存储器管理3)设备管理 4)文件管理 5)作业管理。

2.简述操作系统与计算机硬件和其他软件的关系

1.)操作系统是加到计算机硬件上的第一层软件,它是直接操作计算机硬件的软件,其它的所有软件,

都是以操作系统为基础运行的虚拟机上。只有首先运行操作系统之后,才能运行其它软件。2.)操作系统是管理和操纵计算机硬件的软件3)操作系统是用户与计算机硬件设备之间的接口。

3.操作系统有哪些基本特性,为什么?

1并发性:所谓“并发”是指两个或两个以上的事件在同一时间间隔中发生。

2共享性:资源的共享是指计算机系统中的硬件资源和软件资源不仅为某一程序或者某一用户所独享,多个拥有授权的程序或用户也可以使用。

3虚拟性:所谓“虚拟”就是把物理实体映射为一个或者多个逻辑实体。物理实体是实际存在的,而逻辑实体则是“虚拟”的,只是用户的一种看法和感觉。

4.操作系统的体系结构有哪几种,各有什么优缺点?

1)整体式结构:

2)层次式结构:

3)客户/服务器式结构:

5.简述进程与程序的区别与联系以及线程的概念

进程是一个可并发执行的程序在其数据集上的一次运行,是操作系统进行资源分配的单位和运行单位。程序静态的进程,进程是动态的程序执行。进程是一个能够独立运行的基本单位。

线程:线程是是进程内的一个可调度实体,是一个执行单元,是更小的轻量级的进程。

6.内存管理的功能有哪些?

1)存储空间的分配和回收;2)地址映射,即把程序使用的地址映射成内存空间地址;3)内存的保护,即系统必须保证内存中的进程不会相互干扰,影响整个系统的稳定性、可靠性。

7.设备驱动程序的功能有哪些?

负责接收和分析从设备分配程序转来的信息以及设备控制表中的信息,并结合设备特性进行信息格式转换,把执行信息转换成设备能够执行的形式,驱动设备进行I/O操作,进行必要的错误处理。

8.文件的存储方式有哪几种,各有哪些优缺点?

1)连续分配:优点:比较简单,易于实现,只需记录每一个文件用到的第一个磁盘块。文件系统的性能比较高缺点:必须在创建文件时就确定文件的长度,否则无法分配磁盘空间

2)链接分配:优点:磁盘利用率高,实现简单缺点:文件随机读取的效率比较低

3)索引分配:缺点:每次操作都要首先从磁盘上从头读取链表查找到正确的数据块所在的位置

4)i-结点分配:

9.目录的用途是什么,采用树形目录有哪些好处?

目录的用途:用来归类文件的,它描述了文件系统中文件的存储结构。采用树形目录有哪些好处:

10.简述UNIX系统的结构和特性。

结构具体可分为两大部分:一部分是由是由用户程序和系统提供的服务构成,称为外核程序。另一部分是操作系统内核,其中两个最主要的部分是文件子系统和进程控制子系统。

特性:1是一个分时的,多用户,多任务操作系统。2系统大部分是用高级语言编写,可移植性好。3提供了丰富的经过精心挑选的系统调用。4系统提供了功能强大的可编写Shell语言(即外壳语言)作为用户界面。 5系统采用的是属树形文件系统,有基本的文件系统和若干子文件系统组成。6系统对文件和设备进行统一的处理。 7系统提供了多种通信机制。8系统包括了丰富的外核程序。

11.常见的UXIX系统主要有哪些,各有什么特性?

常见的UNIX系统:IBM公司的AIX系统、SUN的SunOS系统、HP公司的HP-UX系统、Compaq公司的Digital UNIX系统等

常见UNIX系统的特性:Solaris:使用SUN公司自己的RISC芯片的工作站和服务器上。有不同寻常的装载能力和高性能。HP-UX:为公司网络运行和严格管理提供一个高稳定、高可靠的具有标准功能的设计目标;它有良好的开放性、互操作性和出色的软件功能。Open Server:以优良的多任务多用户环境,支持大量的输入、输出操作。

Digital:全部按照POSIX标准而实现的64位UNIX操作系统,它害支持FDDI、ATM等网络协议。

12.Linux系统有哪些特性?

1系统源代码公开 2系统完全免费 3 系统稳定性好 4系统可移植性好 5系统具有良好的用户界面 6系统具有很好的网络功能

13.智能手机系统有几类,各是什么?

智能手机系统:Symbian操作系统,Windows Mobile操作系统,Linux手机操作系统,Palm操作系统。

14.简述Mac Os X的特点

1先占式多工 2动态内存分配 3内存保护 4微内核处理。

15.讨论新一代操作系统应该具有哪些特点。

1.稳定性

2.安全性

3.高性能

4.易用性

5.移动性

6.娱乐性。

第七章

6.试比较星型,环型,网状,总线型网络拓扑结构的特点。

总线型:

优:可构建简单,可靠的小型网络,易于使用和掌握;需要的电缆数量最少;扩展方便可用中

继器扩展总线网络

缺:网络负载过多时会降低网络的传输速度;出现故障时,难以隔离;一个节点坏了,整个变

没用了

星型:

优:提供集中的资源管理,易于扩展和维护;故障易于隔离。

缺:要求中央节点的可靠性较高;中心设备出了问题,整个网络会瘫痪。

环型:

缺:环型网多用于高性能的网络,要求预约宽带,以便提供同步性要求很高的信息,如:视频和音频信号等。在环型网络中,所有计算机平等访问,网络性能均衡。

优:每台计算机都有相同的令牌。

7.客户/服务器网络和对等网络各有什么特点?

对等网络:特点:整个网络没有中央控制手段,简单,降低网络的费用。

客户/服务器网络:主要特征是网络中存在着专门的服务器,他提供集中的管理机制和安全控制

第八章

2、分层的原则有哪些?

答:分层时遵循这样的原则:层次间相对独立,每一层使用下层所提供的服务实现自己的功能;层次应足够多,以免不同功能混杂在同一层中,但也不能太多,否则体系结构会过于庞大;每一层的目的都是向其上一层提供服务并且向上一层屏蔽实现细节。下层对上层来说是透明的,对下层的任何修改都不会影响到上层;任何一层只能通过服务与相邻层进行通信,对任何一层来说,除相邻层外,都看不到其他层。

3、一个都市网由两个位于城市不同地点的办公室通过56Kbps租用线路组成。但是,每个办公室中的计

算机不能与其他办公室中的计算机通信。如果认为路由器配置存在问题,试说明这个问题存在于OSI 模型的哪一层?

答:第三层网络层

5、OSI模型的哪一层把原始数据位打包成数据帧?

答:第二层数据链路层

6、面向连接的服务和无连接的服务各有什么特点?

答:A面向连接的服务是一种可靠的,顺序的数据传输服务。面向连接的服务具有建立连接、数据传输和连接释放3个阶段。面向连接的服务比较适合于在一定时间内向同一目的连续发送大量报文,而对于较短的零星报文来说,面向连接的服务的开销就会显得过大。

B无连接的数据传输服务和邮政传递系统类似。通信双方不需要首先建立连接,而是在数据报文中记录了源地址和目的地址(相当于信封),系统根据报文中的地址信息选择合适的传输线路,完成数据的传输。无连接服务并不能保证数据的顺利到达。不能防止报文的丢失、重复和失序。每个报文都必须记录地址信息,其开销也比较大,因此无连接服务是和实时性要求不高、传送数据不多的情形。

7、125.212.134.25是哪类地址,它的标准子网掩码是什么?10.100.10.11的子网掩码是255.224.0.0,它的子网地址是什么?答:A类地址,255.0.0.0 10.96.0.0

8、196.16.128.0是哪一类地址?试写出它的子网掩码。答:C类地址,255.255.255.0

9、若将网络分成多个子网,每个子网最多有12台主机,要得到最大可能的子网数,应如何设计子网掩码? 答:255.255.255.240

10、网络管理包括那几个方面?

答:包括用户管理、软件管理、设备管理、流量和性能检测、数据备份和故障恢复等。

第九章

1、数据库的主要用途是什么?

答:使用数据库可以最大限度地减少纸张浪费。数据库为数据的查询、添加、删除和修改都提供了很大的方便,还为数据提供了共享、安全等诸多功能。

2、文件系统与关系数据库之间的主要区别是什么?

答:A、以文件为基础的数据管理有很多不足之处:(1)程序与数据不独立(2)数据重复不可避免(3)难于保证数据的一致性(4)难以提供符合用户不同要求的信息提取方式(5)难以保障安全B、数据库具有如下特点:(1)数据是集成的(2)数据重复少(3)程序与数据相对独立(4)易于提供符合用户不同要求的信息提取方式(5)易于提供安全保障

3、数据模型有哪几种?

答:层次、网状、关系和对象等模型

4、什么是关系数据库?

答:关系模型是运用数学知识来研究数据库的结构和定义对数据的操作,因此基于关系模型的关系数据库具有模型简单、数据独立性高、有较为坚实的理论基础等特点。

5、为什么要有关系规范化?

答:关系数据库的规范化理论是解决如何设计数据库的基本表,设计几张表比较合适,怎么样才算是好的数据库设计等问题的依据。把一个不好的表变成一个好的表(消除了数据冗余和操作异常)的过程就是关系规范化的过程。规范化实际就是对不好的表进行分解,使其成为好的表。

6、什么是实体,什么是联系,什么是实体—联系图?

答:A、实体:实体是客观存在并可以相互区分的事物。B、联系:在现实世界中,事物内部以及事物之间是有联系的。联系是数据之间的关联集合,是客观存在的应用语义链。C、E-R模型是用E-R图来描述数据库的概念模型。在E-R图中,用矩形表示实体,用椭圆形表示属性,用菱形表示实体之间的联系7、数据的完整性有哪几类,在数据库系统中是如何保证数据的完整性的?

答:A、(1)实体完整性(2)引用完整性(3)应用语义完整性B、数据完整性用来确保数据库中数据的正确和有效。在关系数据库范畴,数据完整性大多数是由约束条件来控制的。约束条件可以检验进入数据库的数据值,在表一级(记录集)和列一级(属性)上都可以定义约束条件。完整性约束条件可以防止不符合语义的数据进入数据库。通过主键保证数据的实体完整性,外键保证引用完整性,将数据分成若干表和创建表之间的关联关系的的规范化处理,保证数据的完整性。

8、假设有如下表:

employee(emp_id,name,dept,salary,skill),代表雇员(雇员编号,姓名,所属部门,工资,技能),雇员编号为主键,所属部门为引用工作表的工作编号的外键。

写出满足如下要求的SQL语句:

(1)查询全部雇员所属部门的信息。

Select 姓名,所属部门from 代表雇员

(2)查询工资在2000-3000范围内的雇员的姓名和所属部门以及工资数。

Select 姓名,所属部门,工资from 代表雇员where 工资between 2000 and 3000

(3)查询“销售”部门的雇员的姓名和技能。

Select 姓名,技能from 代表雇员where 所属部门=”销售”

(4)统计雇员的总数。

Select count(*) from 代表雇员

9、什么是事务,为什么要引进事务,事务有哪些特点?

答:A、事务是一个完整的工作单元,此工作单元中可以包含多个操作,但这些操作共同构成一个完整的单元,事务中的操作要么全部成功,要么全部不成功。B、事务中的操作必须作为一个完整的工作单元,如果不作为一个完整的工作单元,将会发生严重的后果。在现实生活中是不允许这种事情发生的,数据库是写实的系统,同样必须保证不能发生这种事情,这就是引入事务的原因。C、事务一般具有如下4个特性(即所谓的ACID):(1)原子性(2)一致性(3)隔离性(4)永久性

第十章

2、试简述VC6.0中的数据库访问方法。VC中的数据库访问方法有什么特点?

答:一、使用ADO数据控件访问数据库A、建立VC工程B、使用ADO数据控件1,将Adodc控件加入到工程中2,设置ADO控件的属性和方法C、DataGrid控件1,将网络控件添加到工程2,配置网络控件的属性3,运行程序二、使用ADO API访问数据库A、建立VC工程B、连接数据源1,导入库文件2,初始化COM环境3,打开到数据库的连接4,打开记录集C、使用结果集对象操纵数据1,读取数据2,滚动结果集3,添加记录

特点:在VC6.0中使用ActiveX数据库访问控件可以使用户几乎不用编写代码就可以快速的生成数据库应用程序; VC6.0中提供的Crystal Reports可用于生成报表。如果应用程序比较复杂,仍需要用户编写一些代码,就使用ADO数据控件访问数据库;对于一些较复杂的程序,仅仅使用空间是不够的,还要编写一些代码,就使用ADO API访问数据库

7、简述Web数据库技术的特点,构建一个Web信息系统应该完成哪些工作?

答:Web技术与数据库技术的相互融合已经成为企业应用的热点方向之一。充分发挥数据库管理系统高效的数据存储和管理能力以及Web浏览器简单、平台无关等特点,为用户提供使用简便、内容丰富的服务。建立一个Web信息系统,要确定使用的动态网页技术、选用的数据库、数据库接口以及Web服务器等因素。

相关主题
相关文档
最新文档