试题三(共15分)
阅读以下说明和C函数,回答问题 l和问题 2,将解答填入答题纸的对应栏内。
【说明】
对于具有n个元素的整型数组a,需要进行的处理是删除a中所有的值为 0的数组元素,并将a中所有的非 O元素按照原顺序连续地存储在数组空间的前端。下面分别用函数CompactArr_v1 和CompactArr v2来实现上述处理要求,函数的返回值为非零元素的个数。 函数CompactArr_vl(int a[],int n)的处理思路是:先申请一个与数组a的大小相同的动态数组空间,然后顺序扫描数组a的每一个元素,将遇到的非O元素依次复制到动态数组空间中,最后再将动态数组中的元素传回数组a中。
函数CompactArr_v2(int a[],int n)的处理思路是:利用下标i(初值为 0)顺序扫描数组a的每一个元素,下标k(初值为0)表示数组 a中连续存储的非0元素的下标。扫描时,每遇到一个数组元素,i就增 1,而遇到非 0元素并将其前移后k才增 1。
【问题1】 (12分)
请根据说明中函数CompactArr_v1的处理思路填补空缺(1)~(3),根据CompactArr_v2的处理
思路填补空缺(4)。
【问题2】(3分)
请说明函数CompactArr vl存在的缺点。
从下列的2道试题(试题五和试题六)中任选 1道解答。如果解答的试题数超过1道,则题号小的 1 道解答有效。
试题五(共15分)
阅读下列说明和C++代码,将应填入 (n) 处的字句写在答题纸的对应栏内。
【说明】
某公司的组织结构图如图5-1所示,现采用组合(Composition)设计模式来构造该公司的组织结构,得到如图5-2所示的类图。
其中 Company 为抽象类,定义了在组织结构图上添加(Add)和删除(Delete)分公司/办事处或者部门的方法接口。类ConcreteCompany表示具体的分公司或者办事处,分公司或办事处下可以设置不同的部门。类HRDepartment和 FinanceDepartment分别表示人力资源部和财务部。
【C++代码】
include
include
include
using namespace std;
class Company { // 抽象类
protected:
string name;
public:
Company(string name) { (1) = name; }
(2) ; // 增加子公司、办事处或部门
(3) ; // 删除子公司、办事处或部门
};
class ConcreteCompany : public Company {
private:
list< (4) > children; // 存储子公司、办事处或部门
public:
ConcreteCompany(string name) : Company(name) { }
void Add(Company* c) { (5) .push_back(c); }
void Delete(Company* c) { (6) .remove(c); }
};
class HRDepartment : public Company {
public:
HRDepartment(string name) : Company(name) {} // 其它代码省略
};
class FinanceDepartment : public Company {
public:
FinanceDepartment(string name) : Company(name) {} // 其它代码省略
};
void main() {
ConcreteCompany *root = new ComcreteCompany("北京总公司");
root->Add(new HRDepartment("总公司人力资源部"));
root->Add(new FinanceDepartment("总公司财务部"));
ConcreteCompany *comp = new ConcreteCompany("上海分公司");
comp->Add(new HRDepartment("上海分公司人力资源部"));
comp->Add(new FinanceDepartment("上海分公司财务部"));
(7) ;
ConcreteCompany *comp1 = new ConcreteCompany("南京办事处");
comp1->Add(new HRDepartment("南京办事处人力资源部"));
comp1->Add(new FinanceDepartment("南京办事处财务部"));
(8) ; //其它代码省略
}
某公司网络管理员使用DHCP服务器对公司内部主机的lP地址进行管理,在某DHCP客户机上连续执行“ipconfig/all“和“ipconfig/renew”命令,执行“ipconfig/all”得到的部分信息如图2所示,执行“ipconfig/renew”命令时,在客户机捕获的报文及相关分析如图3所示。请分析图中的信息,补全【11】~【15】的内容
请将每一个空的正确答案写在答题卡【1】~【20】序号的横线上,答在试卷上不得分。
1.计算并填写下表
阅读下列说明,回答问题1至问题4,将解答填入答题纸的对应栏内。
【说明】
计算机能够对音频信号进行采集、加工处理、存储和传递,并使之与其它媒体信息之间能建立起有机的逻辑联系。使计算机能够采集、处理、播放音频信息的部件是声音子系统—一声卡(总线插卡或主板集成)。声卡的功能主要包括:模拟信号与数字信号之间相互转换、数字音频的录制与播放、MIDI功能支持与音乐合成、多路音源的混合与处理等。图1-1为声卡的简单原理框图。
【问题1】 (6分)
声卡上的功能部件用来完成各种特定的功能,其中数字声音信号处理器主要完成什么功能?
【问题2】(6分)
通常声卡上的信号输入/输出接口有哪些?
【问题3】(6分)
我们可以用Windows提供的录音机程序录制一首自己唱的歌,并用音频压缩软件将其压缩编码成MP3格式。①在MP3编码选项中,有“CBR”和“VBR”两种模式,请解释其含义。②在相同的平均码率下,哪种编码模式的MP3文件重放的音质更优?
【问题4】(2分)
下列应用软件中, ① 软件专用于录音剪辑制作, ② 软件专用于编创MIDI音乐。
①、②供选答案:
A. Dreamweaver B.Maya C.Premiere D.Cool Edit 2000
E. Cakewalk F.Photoshop G 3ds Max H.Corel DRAW
打开工作簿文件EXC.XLS,对工作表“电器销售情况表”内数据清单的内容按主要关键字“品种”的升序次序和次要关键字“商品名”的降序次序进行排序,对排序后的数据进行分类汇总(结果显示在数据下方),计算各品种的平均单价,保存EXC.XLS文件。