计算机科学导论习题

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《计算机科学导论》习题
一、选择题
1. 电子计算机从诞生之日起,经历了4个发展阶段,目前所使用的第四代计算机的主要特点是( D )。

A.主要特征是逻辑器件使用电子管,用穿孔卡片机作为数据和指令的输入设备,用磁鼓或磁带作为外存储器,使用机器语言编程
B.主要特征是使用晶体管代替了电子管,内存储器采用了磁芯体,引入了变址寄存器和浮点运算硬件,利用I/O处理机提高了输入/输出能力
C.主要特征是用半导体中、小规模集成电路作为元器件代替晶体管等分立元件,用半导体存储器代替磁芯存储器,使用微程序设计技术简化处理机的结构,在
软件方面则广泛地引入多道程序、并行处理、虚拟存储系统和功能完备的操作
系统,同时还提供了大量的面向用户的应用程序
D.主要特征是使用了大规模和超大规模集成电路
2.计算学科的根本问题是( A )。

A.什么能被有效地自动进行 B.NP问题
C.工程设计 D.理论研究实验方法
3.计算机科学与技术研究的内容可以分为( ABC)。

A.基础理论 B.专业基础 C.应用 D.实验
4.计算机科学技术的研究范畴包括(ABCD )。

A.计算机理论 B.硬件 C.软件D.网络及应用5.计算机科学与技术学科的核心知识点个数是( C )个。

A.3 B.12 C.14 D.21
6.如果[X]补=11110011,则[-X]补是( D )。

A.11l 1001l B.01110011 C.00001100 D.0000110l
7.若十进制数据为137.625,则其二进制数为(B )。

A.10001001.11 B.10001001.101 C.1000l011.101 D.1011111.101 8.存储器存储容量单位中,1KB表示( A )。

A.1024个字节 B.1024位 C.1024个字 D.1000个字节
9.数据总线、地址总线、控制总线3类划分根据是( A )。

A.总线传送的内容 B.总线所处的位置
C.总线传送的方向 D.总线传送的方式
10.每次可传送一个字或一个字节的全部代码,并且是对一个字或字节各位同时进行处理的信息传递方式是( B )。

A.串行方式 B.并行方式 C.查询 D.中断
11.目标程序是( D )。

A.使用汇编语言编写的程序 B.使用高级语言编写的程序
C.使用自然语言编写的程序 D.机器语言程序
12.程序设计语言中用来组织语句生成一个程序的规则称为( A )。

A.语法 B.汇编 C.编译 D.解释
13.汇编语言使用的助记符指令与机器指令通常是一一对应的,是使用( C)。

A.自然语言 B.逻辑语言C.英语单词或缩写 D.形式语言
14.在高级语言中,源程序的基本单位是( D )。

A.字母 B.数字 C.标号 D.语句
15.好的程序设计风格,能够提高程序的(ABCD )。

A.正确性 B.可读性 C.可用性 D.可维护性
16.程序如果需要进行顺序查找,则线性表( C )。

A.必须以顺序方式存储 B. 必须以链表方式存储
C. 采用顺序、链表方式存储均可
D. 以上都不对
17.假设一个顺序表中第一个数据元素在主存中的存储单元地址是100,每个元素占
用2个存储单元,则第5个元素所在存储单元的地址是( A )。

A . 108
B . 110
C . 112
D . 1 20
18.用于处理重复动作的结构是( C )。

A.顺序 B. 判断 C. 循环 D. 逻辑
19.数据结构可以是( D )。

A.数组 B. 记录 C. 链表 D. 以上全部都是
20.一步一步解决问题或完成任务的方法是( D )。

A.结构体 B.递归 C.迭代 D.算法
21. ( C )是算法自我调用的过程。

A.插入 B.查找 C.递归 D.迭代
22.用来计算一组数据乘积的基本算法是( B )。

A.求和 B.乘积 C.最小 D.最大
23.根据数值大小进行排列的基本算法是( B )。

A.查询 B.排序 C.查找 D.递归
24.根据数据加密标准,速度较快、适用于加密大量数据场合加密算法是(A)
A.DES B.RC2 C.DSA D.MD5
25.下列属于概念模型的是( D )。

A.关系数据模型C.网状数据模型B.层次数据模型D.实体-联系模型
26.SQL语言的最大的特点是( D )。

A.交互性 B.直观性
C.过程化 D.非过程化
27.设计E-R图是数据库设计过程中( B )阶段的任务。

A.需求分析 B.概念设计 C.逻辑设计 D.物理设计
28.数据模型的三要素是( C)。

A.外模式、模式、内模式
B.关系模型、层次模型、网状模型
C.数据结构、数据操纵、数据约束
D.实体、联系、属性
29. 一个图书管理数据库有这样的描连:一个图书馆有多本图书,一个学生可以借阅多本图书;而一本图书只能借给一个学生看,那么学生与图书之间的联系属于( B )。

A. 1:1 B. 1:m C. m:n D. 无关联
30.软件是指(D )。

A.按事先设计的功能和性能要求执行的指令系列
B.使程序能够正确操纵信息的数据结构
C.与程序开发维护和使用有关的图文资料
D.计算机系统中的程序、数据结构及其说明文档
31.瀑布模型的主要特点是(A )。

A.将开发过程严格地划分为一系列有序的活动
B.将过程分解为阶段
C.提供了有效的管理模式
D.缺乏灵活性
32.软件开发方法是指( A )。

A.指导软件开发的一系列规则 B.软件开发的步骤
C.软件开发的技术D.软件开发的思想
33.基于构件的软件开发总是( D )。

A.使用现存的构件 B. 自己开发构件
C.修改现存的构件D.使用现存的和开发新的构件
34.简单地说,软件的质量是指( C )。

A.软件满足需求说明的程度 B.软件性能指标的好坏
C.用户对软件的满意程度 D. 软件可用性的程度
二.简答题
1.什么是计算机系统?
计算机系统是一种能够按照事先存储的程序,自动、高速地对数据进行输入、处理、输出和存储的系统,由计算机硬件系统和计算机软件系统两大部分组成。

2.请解释冯•诺依曼所提出的“存储程序”概念。

把程序和数据都以二进制的形式统一存放在存储器中,由机器自动执行。

不同的程序解决不同的问题,实现了计算机通用计算的功能。

3. 简述计算机硬件系统的五大部分。

①运算器
运算器又称算术逻辑单元(Arithmetic Logic Unit,ALU),是计算机对数据进行加工处理的部件,它的主要功能是对二进制数进行加、减、乘、除等算术运算和与、或、非等基本逻辑运算,实现逻辑判断。

运算器是在控制器的控制之下实现其功能的,运算结果由控制器发出的指令送到内存储器中。

②控制器
控制器主要由指令寄存器、译码器、程序计数器和操作控制器等组成,控制器是用来控制计算机各部件协调工作,并使整个处理过程有条不紊地进行。

它的基本功能就是从内存中取出指令和执行指令,即控制器按程序计数器指出的指令地址从内存中取出该指令进行译码,然后根据该指令功能向有关部件发出控制命令,执行该指令。

另外,控制器在工作过程中,还要接受各部件反馈回来的信息。

通常把运算器、控制器集成在一个大规模集成电路板上称为中央处理器,又称CPU(Central Processing Unit)。

③存储器
存储器是计算机的记忆装置,用于存放原始数据、中间数据、最终结果和处理程序。

为了对存储的信息进行管理,把存储器划分成存储单元,每个单元的编号称为该单元的地址。

各种存储器基本上都是以1个字节作为一个存储单元。

存储器内的信息是按地址存取的,如要访问存储器中的某个信息,就必须知道它的地址。

向存储器里存入信息也称为“写入”,写入新的内容将覆盖原来的内容。

从存储器里取出信息也称为“读出”,信息读出后并不破坏原来存储的内容,因此信息可以重复读出,多次利用。

通常把内存储器、运算器和控制器合称为计算机主机,也可以说主机是由CPU与内存储器组成的,而主机以外的装置称为外部设备,外部设备包括输入/输出设备、外存储器等。

④输入和输出设备
输入和出设备简称I/O(Input/Output)设备。

用户通过输入设备将程序和数据输入计算机,输出设备将计算机处理的结果(如数字、字母、符号和图形)显示或打印出来。

常用的输入设备有:键盘、鼠标器、扫描仪、数字化仪等;常用的输出设备有:显示器、打印机、绘图仪等。

4. 简述计算机系统的主要技术指标。

评价计算机的性能指标有很多,通常人们从计算机的字长、时钟周期和主频、运算速度、内存容量、数据输入输出最高速率等技术指标来评价计算机系统。

1.字长
在计算机中,用若干二进制位表示一个数或一条指令,前者称为数据字,后者称为指令字。

字长的直接影响计算机的功能强弱、精度高低和速度快慢。

计算机处理数据时,一次可以运算的数据长度称为一个“字”(Word),字的长度称为字长。

一个字可以是一个字节(Byte,简称B),也可以是多个字节。

常用的字长有8位(bit)、16位、32位、64位等。

如某一类计算机的字由4个字节组成,则字的长度为32位,相应的计算机称为32位机。

2.时钟周期和主频
计算机的中央处理器对每条指令的执行是通过若干个微指令操作来完成的,这些微指令操作是按时钟周期的节拍来“动作”的,时钟周期的微秒数反映出计算机的运算速度。

有时也用时钟周期的倒数——时钟频率(兆频),即人们常说的主频来表示。

一般说来,主频越高(时钟周期越短),计算机的运算速度越快。

但是,主频并不能全面准确地反映计算机的运算速度,而每秒钟执行百万条指令数(MIPS)指标则能较全面准确地反映计算机的运算速度。

近十年来,微计算机的主频提高很快,例如,IBM PC/XT微机的CPU主频为4.77MHz,而Pentium 4 CPU的主频己超过1GMHz,并且在不断提高。

3.运算速度
计算机的运算速度是衡量计算机水平的一项主要指标,它取决于指令执行时间。

运算速度的计算方法多种多样,目前常用单位时间内执行多少条指令来表示,而计算机执行各种指令所需时间不同。

因此,常根据在一些典型题目计算中,各种指令执行的频度以及每种指令的执行时间来折算出计算机的等效速度。

4.内存容量
存储器的容量反映计算机记忆信息的能力,它常以字节为单位表示。

存储器的容量越大,则存储的信息越多,计算机的功能越强。

计算机中的操作大多是与内存交换信息,但内存的存取速度相对CPU的算术和逻辑运算的速度要低1~2个数量级。

因此,内存的读写速度也是影响计算机运行速度的主要因素之一。

为了度量信息存储容量,将8位二进制位(8bits)称为1个字节,字节是计算机中数据处理和存储容量的基本单位。

1024个字节称为1K字节(1KB),1024K个字节称1兆字节(1MB),1024M个字节称为1G字节(1GB),1024G个字节称为1T字节(1TB),现在微型计算机主存容量大多数在兆字节以上。

5.数据输入输出最高速率
主机与外部设备之间交换数据的速率也是影响计算机系统工作速度的重要因素。

由于各种外部设备本身工作的速度不同,常用主机所能支持的数据输入输出最大速率来表示。

5. 什么是接口?它的主要功能是什么?
答:在主机与外设进行数据交换时必领引入相应的逻辑部件解决两者之间的同步与协调、数据格式转换等问题,这些逻辑部件就称为输入输出接口,简称为接口。

输入输出接口的基本功能有:
(1)实现数据缓冲,提供主机和设备交换信息过程中的数据缓冲机构,使主机与外设在工作速度上达到匹配。

(2)实现数据格式的转换,例如,当主机和设备的信号通路不同时的信号电平转换功能、数据传送中的格式(串行、并行)转换功能、直接内存访问中的额外需求等。

(3)提供外设和接口的状态,为 CPU更好地控制各种外设提供有效的帮助,交换主机和外围设备的状态信息。

(4)实现主机与外设之间的通讯联络控制,实现主机与设备之间的数据交换。

6. 简述程序设计过程的一般步骤。

程序设计的过程一般有四个步骤。

1.分析问题
在着手解决问题之前,应该通过分析,充分理解问题,明确原始数据、解题要求、需要输出的数据及形式等。

2.设计算法
算法是解题的过程。

首先集中精力于算法的总体规划,然后逐层降低问题的抽象性,逐步充实细节,直到最终把抽象的问题具体化成可用程序语句表达的算法。

这是一个自上而下、逐步细化的过程。

3.编码
利用程序设计语言表示算法的过程称为编码。

4.调试程序
调试程序包括编译和连接等操作。

编译程序将源程序转换为目标程序,它对程序员编写的源程序进行语法检查,程序员根据编译过程中的错误提示信息,查找并改正源程序的错误后再重新编译,直到没有语法错误为止。

大多数程序设计语言还要使用连接程序把目标程序与系统提供的库文件进行连接以得到最终的可执行文件。

在连接过程中若程序使用了错误的内部函数名,将会引起连接错误。

对于经过编译和连接,并最终运行结束的程序,程序员还要对程序执行的结果进行分析,只有得到正确结果的程序才是所需的程序。

7. 简述高级语言程序的运行过程。

使用高级语言编写程序的一般过程可以归纳为以下几个步骤:
(1) 使用文本编辑工具,逐条编写源程序的语句。

保存源程序的文件时,文件的后缀名与所用的高级语言有关。

(2) 编译源程序文件,生成目标文件,文件后缀名通常为obj。

(3) 链接目标文件,生成可执行文件,文件后缀名通常为exe。

(4) 在计算机上运行可执行程序,并进行调试和维护。

程序的执行环境由操作系统提供,一般分为命令行环境和图形用户界面环境。

在DOS与大多数Unix类操作系统中,提供的就是命令行用户界面,用户需要在系统命令提示符后面输入各种操作命令以实现需要的功能;在Windows操作系统中,提供的是图形用户界面,用户可以通过点击鼠标等操作完成希望的功能。

“界面就是程序”反映了在程序设计中为用户提供良好的操作界面的重要性。

用户使用界面的好坏直接影响着程序的质量,要树立以人为本的思想,尽量为用户提供便利。

8.简述编译程序的概念。

编译程序是把高级语言程序(源程序)作为一个整体来处理,在应用源程序执行之前,就将程序源代码“翻译”成目标代码(机器语言),编译后与系统提供的代码库链接,形成—个完整的可执行的机器语言程序(目标程序代码)。

9.结构化程序设计的思想是什么?
答:结构化程序设计的基本思想就是采用自顶向下、逐步求精的设计方法和单入口单出口的控制结构。

10.结构化程序设计的原则是什么?
答:结构化程序设计的原则是:
(1) 使用顺序、选择、循环3种基本控制结构表示程序逻辑。

(2)程序语句组织成容易识别的语句模块,每个模块都是单入口、单出口。

(3)严格控制GOTO语句的使用。

11.什么是数据结构?数据的物理结构有哪些?
答:数据结构是指数据元素之间的相互关系的集合,包括了数据的逻辑结构、物理结构以及数据的运算。

数据的物理结构主要有四种,分别是顺序结构、链表结构、索引结构及散列结构。

(1) 顺序结构:是把所有元素存放在一片连续的存储单元中,逻辑上相邻的元素存储在物理位置相邻的存储单元中,由此得到的存储表示称为顺序存储结构。

(2) 链表结构:对逻辑上相邻的元素不要求其物理位置相邻,元素间的逻辑关系通过附设的指针域来表示,由此得到的存储表示称为链式存储结构。

(3) 索引结构:每个数据结构建立索引表,每个数据元素占用表中的一项,每个表项通常包含关键字和地址指针。

其中的关键字是能够惟一标志一个数据元素的数据项。

(4) 散列结构:通过构造相应的散列函数,由散列函数的值来确定元素存放的地址。

12.什么是算法,算法的特性有哪些?
答:“算法(Algorithm)是一组明确的、可以执行的步骤的有序集合,它在有限的时间内终止并产生结果”。

算法的特性有:
(1) 有穷性(可终止性):一个算法必须在有限个操作步骤内以及合理的有限时间内执行完成。

(2) 确定性:算法中的每一个操作步骤都必须有明确的含义,不允许存在二义性。

(3) 有效性(可执行性):算法中描述的操作步骤都是可执行的,并能最终得到确定的结果。

(4) 输入及输出:一个算法应该有零个或多个输入数据、有1个或多个输出数据。

13.什么是算法的时间复杂度和空间复杂度,如何表示?
答:时间复杂度是与求解问题规模、算法输入相关的函数,该函数表示算法运行所花费的时间。

记为,T(n),其中,n代表求解问题的规模。

算法的空间复杂度(Space complexity)度量算法的空间复杂性、即执行算法的程序在计算机中运行所占用空间的大小。

简单讲,空间复杂度也是与求解问题规模、算法输入相关的函数。

记为,S(n),其中,n代表求解问题的规模。

时间复杂度和空间复杂度同样,引入符号“O”来表示T(n)、S(n)与求解问题规模n之间的数量级关系。

14.简要说明一个DBMS的组成部分。

答:DBMS通常由四部分组成,也是DBMS要完成的功能:
(1)数据定义语言DDL及其翻译处理程序:定义数据库中的数据对象。

(2)数据操纵语言DML及其编译(或解释)程序:实现对数据库的查询、插入、删除、修改等操作。

(3)数据库运行控制程序:实现对数据库的统一管理和控制,从而保证数据的安全性、完整性,并对数据并发访问进行控制,完成数据库的故障恢复等功能。

(4)实用程序:完成数据库的建立与维护、数据格式的转换与通信、数据库的转储等功能。

15.简述关系数据库的完整性。

答:关系模型中,定义了三种完整性约束条件:实体完整性、参照完整性、用户自定义的完整性。

实体完整性规定一个关系的主码(包括所有的主属性)不能为空;参照完整性规定外码必须是另一个关系的主码的有效取值,或为空;用户定义的完整性是根据应用需求而要求数据必须满足的语义的要求,如某一属性的取值范围。

16.什么叫软件危机?
答:随着计算机应用的普及和深化,计算机软件的数量、规模、复杂程度和开发所需的人力、物力等都在急剧增加,计算机发展初期个人编写小程序的传统方法,已不再适合现代大型软件的开发,用传统方法开发出来的许多大型软件甚至无法投入运行。

同时,由于计算机应用领域和硬件技术得到飞速发展,软件的生产速度、质量和规模远远适应不了对软件的需求,造成大量人力、物力、财力的浪费,在软件开发和维护过程中出现了巨大的困难。

计算机领域把大型软件开发和维护过程中遇到的一系列严重问题称为“软件危机”(Software Crisis)。

17.什么叫软件工程?
答:软件工程是研究大规模程序设计的方法、工具和管理的一门工程科学,也就是运用系统的、规范的和可定量的方法来开发、运行和维护软件的系统工程。

软件工程是一门交叉学科,涉及到计算机科学、管理科学、工程学和数学。

软件工程的理论、方法、技术都是建立在计算机科学的基础上,它是用管理学的原理、方法来进行软件生产管理;用工程学的观点来进行费用估算、制定进度和实施方案;用数学方法来建立软件可靠性模型以及分析各种算法和性质。

软件工程是指导计算机软件开发和维护的工程学科。

相关文档
最新文档