期末考试 百分网手机站

计算机软件基础期末考试试题及参考答案

时间:2020-09-07 17:53:45 期末考试 我要投稿

计算机软件基础期末考试试题及参考答案

  北京航空航天大学

计算机软件基础期末考试试题及参考答案

  班级:__________;学号:______________;姓名:__________________;成绩:___________

  一.填空题(本题共10分,每题1分)

  1、程序= 数据结构 +算法 。

  2、结构化程序的最本质的控制结构有 顺序 , 选择 和 循环 。 3、链表可分为 單链表 、 双链表 ,循环链表等几类。 4、 具有100个结点的完全二叉树的叶子结点数为 50 。

  5、无序表( 81,52,57,95,22,04,96,83)的第一趟冒泡排序序列(从小到大)为 (04,。

  6、操作系统的五大基本功能是 储存器管理 , 处理机管理 ,设备管理 ,文件管理,作业管理。

  7、进程的基本状态包括 就绪态(等待) , 运行态 和 阻塞态。 8、软件测试技术可分为 黑箱测试 和 白箱测试 。

  9、TCP/IP五层协议体系结构包括:物理层 、 网络接口层 、 网络层 、 运输层 、 应用层。

  10、IP地址是一种层次型地址,由 网络号 和 主机号 组成。

  二.选择题(本题10分,每题1分)

  1、我们把具有共同属性、共同操作性质的对象的集合定义为(A )。

  A.类 B.属性 C.对象 D.消息

  2、软件测试的目的是(B )。

  A.证明软件是正确的` B. 发现错误,降低软件带来的风险 C.排除软件中的所有错误 D. 与软件调试相同

  3、在一个单链表中,若要在P所指向的结点之后插入一个新结点,则需要相继修改(B )个指针域的值。

  A.1 B.2 C.3 D.4

  4、 设栈S和队列Q的初始状态为空,元素e1、e2、e3、e4、e5、e6依次通过栈S,一个元素出栈后即进入队列Q,若6个元素出队的顺序是e2、e4、e3、e6、e5、e1,则栈S的容量至少应该是(C )。

  A. 6 B. 4 C. 3 D. 2

  5、已知某二叉树的前序遍历序列为ABCDEFG,中序遍历序列为CBDAFEG,其后序遍历序列为(A )。

  A.CDBFGEA B.CBDFGEA C.CBDFGAE D.CDBGFAE

  6、操作系统负责管理计算机的 (

  A.程序 B.作业 C.资源 D.进程

  7、进程在3个基本状态中的转换,肯定不会有的转换是(B )。

  A.运行态→就绪态 B.阻塞态→运行态 C.运行态→阻塞态 D.阻塞态→就绪态

  8、E—R方法的三要素是(C )。

  A.实体,属性,实体集 B.实体,码,联系 C.实体,属性,联系 D.实体,域,码

  9、路由器工作在OSI/RM模型的(D)层。

  A.物理层 B.数据链路层 C.应用层 D.网络层

  10、202.112.100.16是一个( C)类IP地址。

  A.A B.B C.C D.D

  三.问答题(本题15分,每小题5分)

  1、递归算法与递推算法

  递归算法:是构造计算机算法的一种基本方法。如果一个过程直接或间接地调用它自身,则称该过程是递归的,递归过程必须有一个递归终止条件,即存在“递归出口”,无条件的递归是毫无意义的。

  递推算法:是一种简单的算法,即通过已知条件,利用特定关系得出中间推论,直至得到结果的算法。

  2、分页存储管理与分段存储管理

  分页储存管理:允许将一个进程直接分散地装入到许多不相邻的分区中,则无须再进行“紧凑”。基于这一思想而产生了离散分配方式。离散分配的基本单位是页。

  分段储存管理:一个用户程序通常由一个主程序、若干个子程序和数据区组成,我们把每一个像这样的逻辑信息组称做“段”,这时用户程序的逻辑地址空间变成了二维地址空间(把整个逻辑地址空间分为若干段,每一个段段内又从0开始记数)。我们可以以“段”为单位进行内存管理。这就是“分段式”内存管理的思想。

  3、给出一组关键字(19,01,26,92,87,11,43,87,21),进行冒泡排序,列出每一遍排序后关键字的排列次序。(要求排序结果从小到大,每次向左冒泡)

  四.编程题(本题15分)

  1 数据库编程题(10分) 给定下列四个关系模式:

  内容需要下载文档才能查看

  S:学生表 C:课程表

  SC:学生选课表

  原题:参见北京航空航天大学2008~2009年第1学期计算机软件技术基础试题

  内容需要下载文档才能查看

  内容需要下载文档才能查看 内容需要下载文档才能查看

  其中,各个表中的字段含义分别为:

  SNO:学号;SN:姓名;SEX:性别;AGE:年龄。 CNO:课程编号;CN:课程名称;TN:代课教师姓名。 G:学生所选课成绩。

  注:课程字段值直接用课程中文,如数学课字段值‘数学’,学生和老师的名字字段值直接

  用其名字的中文,年龄字段值为年龄的整数值。

  请写出以下问题的SQL计算机序列(注:采用SQL92标准)。

  1) 在学生表中,用分组的方法分别列出男生、女生的人数。(2分)

  SELECT COUNT * FROM S WHERE SEX =’男’; SELECT COUNT * FROM S WHERE SEX =’女’;

  2) 创建课程表(字段名、类型和长度可自定义),并指出主键。(2分)

  CREATE TABLE C ( CNO CHAR(3) CN CHAR(10), TN CHAR(2) );

  3) 查询所有学生的姓名、所选课程的名称和成绩,并按成绩由小到大排序。(2分)

  写法一:SELECT DISTINCT S.SN, C.CN, SC,G FROM S, C, SC WHERE S.SNO = SC.SNO AND C.CNO = O ORDER BY G ASC

  写法二:SELECT DISTINCT SN, CN, G FROM S JOIN SC ON S.SNO = SC.SNO AND C JOIN SC ON C.CNO = O ORDER BY G ASC

  4) 从选课表中,查询出成绩排在最前面的5行记录,要求列出选课表的所有字段。(2分)

  SELECT TOP 5 * FROM SC ORDER BY G DESC

  5)从学生表中列出所有姓张的学生的姓名及年龄。(2分)

  答:SELECT SN,AGE FROM S WHERE SN LIKE ’张%’2 C++编程题(5分)

  #include

  class Vehicle {

  public:

  int color; private:

  int tyre_number;

  PRIMARY key NOT NULL,

  public:

  void SetColor(int c) { color = c; }

  void Move() { printf("Vehicle moving ! "); } };

  class Car : public Vehicle {

  protected:

  int velocity; public:

  void Move() { printf("Car moving ! ");}

  };

  class SportsCar : public Car {

  public:

  int cost;

  void Move() { printf("SportsCar moving ! ");}

  };

  int main() {

  int col = 0;

  Vehicle *vec; SportsCar BMWM3;

  BMWM3. SetColor(1); BMWM3.Move();

  col = BMWM3. color;

  vec = new Car;

  vec->Move(); return 0; }

  1) main 中当程序运行到vec = new Car时,col = ?(1分) 1

  2) 写出程序的运行结果。(2分) SportsCar moving! Vehicle moving!

  3) 写出在main中的对象BMWM3可以访问的成员变量。(1分) color和cost

【计算机软件基础期末考试试题及参考答案】相关文章:

2017导游证基础强化试题及参考答案07-12

临床医学检验技师基础试题及参考答案06-09

统计师考试《初级基础》练习试题及参考答案10-01

语文试题及参考答案08-05

中考语文试题及参考答案09-13

计算机基础期末考试练习试题及答案09-25

水利知识竞赛试题及参考答案11-11

中考英语试题及参考答案08-30

初一数学期末考试题及参考答案举例09-20