计算机专业试题(一)
本试卷分三部分,公共部分、C++部分和 JAVA 部分,其中公共部分为必考部分,C++与 JAV
部分,两者选一完成。试卷满分 100 分。
公共部分(40 分)
1:操作系统的主要组成部分?(8 分,每点 2 分)
进程和线程的管理,存储管理,设备管理,文件管理
2 :Internet 采用哪种网络协议?该协议的主要层次结构?(10 分)
Internet 采用 TCP/IP 协议(2 分)
物理层,(2 分)数据链路层,(2 分) 网络层(IP) (2 分) ,应用层(2 分)
3 :解释文件系统为什么会存在数据冗余?这种数据冗余会导致哪两类典型的问题?(8 分)
由于文件系统难于实现数据共享,因此,相同的数据可能会在多个文件中重复出现,即产生
数据冗余。(4 分)
数据冗余会导致数据(或更新)异常(2 分)和数据不一致性(2 分)
4 :简述中断装置的主要职能。(6 分)
中断装置的职能主要有三点:
1)检查是否有中断事件发生。(2 分)
2)若有中断发生,保护好被中断进程的断点及现场信息,以便进程在适当时候能恢复运行。
(2 分)
3)启动操作系统的中断处理程序。(2 分)
5:什么是虚拟设备?为什么在操作系统中引入虚拟设备?(8 分)
虚拟设备是通过虚拟技术将一台独占设备变换为若干台逻辑设备,供若干个用户进程同时使
用,通常把这种经过虚拟技术处理后的设备称为虚拟设备。(4 分)
在操作系统设备管理中,引入虚拟设备是为了克服独占设备速度较慢、降低设备资源利用率
的缺点,从而提高设备的利用率。(4 分)
C++部分(60 分)
1. 定义一个类模板与定义一个类函数模板的格式相同,必须以关键字_________开始。
template(3 分)
2. 16 位计算机中整型占__________个字节存储空间。2(3 分)
3. 下列各种函数中,( )不是类的成员函数。C(4 分)
A 构造函数 B 析构函数 C 友元函数 D 拷贝构造函数
4.假定DD 为一个类,则执行“DD a[10],*P”语句时,系统自动调用该类构造函数的次数为
( )B(4 分)
A、11 B、10 C、1 D、0
5.循环while(int i=0) i--;执行次数是( )。A(4 分)
A 0 B 1 C 5 D 无限
6.若类A 和类 B 没有继承关系,对于函数 void func(A&) ,请至少用两种不同方法说明如何
才能传递一个非常量的 B 类对象给func 函数。(10 分)
可在A类中定义一个构造函数:A(const B&); (5 分)
或在B类中定义一个自动转换函数: operator A( ) const; (5 分)
7.static 全局变量与普通的全局变量有什么区别?static 局部变量和普通局部变量有什么
区别?static 函数与普通函数有什么区别?(20 分)
static 全局变量与普通全局变量的区别:前者在主函数之前就要被初始化,(2 分)后者无要
求。(2 分)
static 局部变量和普通局部变量的区别:static 全句变量是所有函数共享的变量,在一个
函数使用完它后它的值会保持到下一个函数来改变它(2 分) 。后者,本函数所声明的局部变
量在本函数运行完之后会被销毁。(2 分)
static 函数与普通函数的区别:static 的可以用类来访问(就是不用初始化一个类就直接
使用这个类的这个 static 方法);(2 分)非 static的只能通过对象来访问(2 分) 。static 的
定义里不能用到类内部非 static 变量值。(3 分)static 在循环中定义并赋值时,定义过程
只进行一次,而不是每个循环 1 次。(3 分)
8.写出此函数的功能(12 分)
struct StrNode {
char name[15]; // 字符串域
StrNode * next; // 指针域
};
void QB(StrNode * & f ,int n) {
if (n 0) { f=NULL; return; }
f=new StrNod