从下列的2道试题(试题五和试题六)中任选 1道解答。如果解答的试题数超过1道,则题号小的 1 道解答有效。试题五(共15分)阅读下列说明和C++代码,将应填入 (n) 处的字句写在答题纸的对应栏内。【说明】某公司的组织结构图如图5-1所示,现采用组合(Composition)设计模式来构造该公司的组织结构,得到如图5-2所示的类图。其中 Company 为抽象类,定义了在组织结构图上添加(Add)和删除(Delete)分公司/办事处或者部门的方法接口。类ConcreteCompany表示具体的分公司或者办事处,分公司或办事处下可以设置不同的部门。类HRDepartment和 FinanceDepartment分别表示人力资源部和财务部。【C++代码】include iostreaminclude listinclude stringusing 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) ; //其它代码省略}

从下列的2道试题(试题五和试题六)中任选 1道解答。如果解答的试题数超过1道,则题号小的 1 道解答有效。

试题五(共15分)

阅读下列说明和C++代码,将应填入 (n) 处的字句写在答题纸的对应栏内。

【说明】

某公司的组织结构图如图5-1所示,现采用组合(Composition)设计模式来构造该公司的组织结构,得到如图5-2所示的类图。

其中 Company 为抽象类,定义了在组织结构图上添加(Add)和删除(Delete)分公司/办事处或者部门的方法接口。类ConcreteCompany表示具体的分公司或者办事处,分公司或办事处下可以设置不同的部门。类HRDepartment和 FinanceDepartment分别表示人力资源部和财务部。

【C++代码】

include <iostream>

include <list>

include <string>

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) ; //其它代码省略

}


相关考题:

试题二(共15 分)阅读以下说明,回答问题1至问题5,将解答填入答题纸对应的解答栏内。【说明】在Linux服务器中,inetd/xinetd是Linux系统中一个重要服务。【问题1】(2 分)下面选项中 (1) 是xinetd的功能。(1)备选答案:A. 网络服务的守护进程B. 定时任务的守护进程C. 负责配置网络接口D. 负责启动网卡

●试题四阅读下列函数说明和C代码,将应填入(n)处的字句写在答题纸的对应栏内。【说明】函数QuickSort是在一维数组A[n]上进行快速排序的递归算法。【函数】void QuickSort(int A[],int s,int t){int i=s,j=t+1,temp;int x=A[s];do{do i++;while (1) ;do j--;while(A[j]x);if(ij){temp=A[i]; (2) ; (3) ;}}while(ij);A[a]=A[j];A[j]=x;if(si-1) (4) ;if(j+1t) (5) ;}

请教:一级MS Office模拟试题五 第1大题第2小题如何解答?【题目描述】

阅读以下说明和C++码,将应填入(n)处的字名写在对应栏内。从下列的3道试题(试题五至试题七)中任选1道解答。如果解答的试题数超过1道,则题号小的1道解答有效。[说明] 编写程序,把从键盘上输入的一批整数(以-1作为终止输入的标志)保存到文本文件“a: xxk1. dat”中。(1)include <fstream. h >include < stdlib. h >void main ( ) {(2)if ( ! four) {cerr < <“文件没有找开!” < <end1;exit (1);}int x;cin > >x;while((3)){(4)cin> >x;}(5)}

从下列的 4道试题(试题一至试题四)中任选 1道解答。请在答卷上用“Ο”圈住选答的试题编号。若用“Ο”圈住的试题编号超过1道,则按题号最小的 1道评分。试题一 论软件的静态演化和动态演化及其应用软件演化(Software Evolution)是指软件在其生命周期内的更新行为和过程。演化是一系列贯穿软件生命周期始终的活动,系统需求改变、功能实现增强、新功能加入、软件架构改变、软件缺陷修复、运行环境改变均要求软件系统能够快速适应变化,具有较强的演化能力。软件静态演化(Static Evolution)和动态演化(Dynamic Evolution)是目前软件演化的两种重要类型。请围绕“软件的静态演化和动态演化及其应用”论题,依次从以下三个方面进行论述。1. 概要叙述你参与管理和开发的软件项目以及你在其中所担任的主要工作。2. 请分别对软件静态演化和动态演化的特点进行论述, 说明两种软件演化类型各自的优缺点及其应用场合,并举例说明各自的常见演化技术手段。3. 具体阐述你参与管理和开发的项目中所进行的软件演化活动的特点、演化的类型,以及所采取的对应演化技术手段,说明具体实施过程以及实际应用的效果。

从下列的3道式题(试题五至试题七)中任选1道解答。如果解答的试题数超过1道,则题号小的1道解答有效。阅读以下说明和C++码,将应填入(n)处的字名写在的对应栏内。[说明] 利用c++的各种控制语句编写一个万年历程序,要求:显示任何年份的日历,日历以月份顺序排列,每月以星期顺序排列,类似于一般挂历上的格式。本程序包含如下两个函数:Leap ()用于判定指定的年份是闰年,Week ()用于计算year年份的1月1日是星期几,其判定规则为:(1) 如果year 年份为1994年,则为星期六。(2) 如果year 年份大于1994年,则星期值weekno 按下列公式计算:differ=(year-1994)*(365%6)+(year-1993)/4-(year-2001)/100+(year-2001)/400 date=6+differ%7weekno=(date6)? date-7:date(3) 如果year 年份小于1994年,则星期值weekno 按下列公式计算:differ=(1994-year)*(365%7)+(1996-year)/4-(2001-year)/100+(2000-year)/400 weekno=6-dder%7include "iostream. h"include "iomanip. h"int leap(int n){if( (1) )return 0elsereturn 1;}int week( int year ){int a1, differ, date, weekno;if (year = = 1994)a1 =0;else if (year > 1994)a1=1;else a1= -1;switch(a1){case 0: return 6; break;case 1:{(2)date = 6 + differ% 7; weekno = ( date > 6) ? date - 7 date;}return weekno; break;case - 1:{differ = ( 1994 - year) * (365%7) + (1996 - year)/4 - (2001 - year)/100 + (2000 - year)/400;weekno =6-differ%7; } return weekno; break;}}void main( )}int i,year,m2,n,j;cout < < “Please input 某年数:”;cin> >year;if ( ! leap(year) )(3);elsem2 =28;int month [12]: {31 ,m2,31,30,31,30,31,31,30,31,30,31 };(4)for ( i=0; i<12; i+ + ){cout< < < <end1< <setw(4*n) < <";for(j=1 ;j< =month [i] ;j+ +){cout< <setw(4) < <j;n+ +;if(n> =7){(5)cout < < end1;}}}}

试题 4(11 分)阅读以下说明,回答问题 1 至问题 4,将解答填入答题纸对应的解答栏内。[说明]某公司 A 楼高 40 层,每层高 3.3 米,同一楼层内任意两个房间最远传输距离不超过 90 米,A 楼和 B 楼之间距离为 500 米,需在整个大楼进行综合布线,结构如图 1-1 所示。为满足公司业务发展的需要,要求为楼内客户机提供数据速率为 100Mb/s 的数据、图像、及语音传输服务。[问题 1](6 分)综合布线系统由六个子系统组成,将图 1-1中(1)~(6)处空缺子系统的名称填写在答题纸对应的解答栏内。[问题 2](3 分)考虑性能与价格因素,图 1-1 中(1) 、 (2)和(4)中各应采用什么传输介质?[问题 3](2 分)为满足公司要求,通常选用什么类型的信息插座?

阅读下面的说明,回答问题1~问题4,将解答填入答题纸对应的解答栏内。[说明]阅读以下说明,回答问题1~问题4,将解答填入答题纸对应的解答栏内。windows Server 2003是一个多任务多用户的操作系统,能够以集中或分布的方式实现各种应用服务器角色,是目前应用比较广的操作系统之一。Windows内置许多应用服务功能,将下表中(1)~(5)处空缺的服务器名称填写在答题纸对应的解答栏内。(1)

试题四(共15 分)阅读下列说明和C代码,回答问题 1 至问题3,将解答写在答题纸的对应栏内。【说明】某应用中需要对100000 个整数元素进行排序,每个元素的取值在 0~5 之间。排序算法的基本思想是:对每一个元素 x,确定小于等于 x的元素个数(记为m),将 x放在输出元素序列的第m 个位置。对于元素值重复的情况,依次放入第 m-l、m-2、…个位置。例如,如果元素值小于等于4 的元素个数有 10 个,其中元素值等于 4 的元素个数有3个,则 4 应该在输出元素序列的第10 个位置、第 9 个位置和第8 个位置上。算法具体的步骤为:步骤1:统计每个元素值的个数。步骤2:统计小于等于每个元素值的个数。步骤3:将输入元素序列中的每个元素放入有序的输出元素序列。【C代码】下面是该排序算法的C语言实现。(1)常量和变量说明R:常量,定义元素取值范围中的取值个数,如上述应用中 R值应取6i:循环变量n:待排序元素个数a:输入数组,长度为nb:输出数组,长度为nc:辅助数组,长度为R,其中每个元素表示小于等于下标所对应的元素值的个数。(2)函数sort1 void sort(int n,int a[ ],intb[ ]){2 int c[R],i;3 for (i=0;i (1) ;i++){4 c[i]=0;5 }6 for(i=0;in;i++){7 c[a[i]] = (2) ;8 }9 for(i=1;iR;i++){10 c[i]= (3) ;11 }12 for(i=0;in;i++){13 b[c[a[i]]-1]= (4) ;14 c[a[i]]=c[a[i] ]-1;15 }16 }【问题1】(8 分)根据说明和C代码,填充 C代码中的空缺(1)~(4)。【问题2】(4 分)根据C代码,函数的时间复杂度和空间复杂度分别为 (5) 和 (6) (用 O符号表示)。【问题3】(3 分)根据以上C代码,分析该排序算法是否稳定。若稳定,请简要说明(不超过 100 字);若不稳定,请修改其中代码使其稳定(给出要修改的行号和修改后的代码)。从下列的2 道试题(试题五和试题六)中任选 1 道解答。如果解答的试题数超过 道,则题号小的 道解答有效。

试题一(共15分)阅读以下说明,回答问题1至问题5,将解答填入答题纸对应的解答栏内。【说明】某网吧拓扑结构如图 1-1 所示,可提供影视、游戏竞技、视频聊天等多种服务,采用VLAN 划分来区分不同的服务。问题 1】(2分)网吧要求实现千兆接入,可采用的方式为 (1) 。(1)备选答案:A. FTTxB. ADSLC. PSTN拨号

试题一(共15分)阅读以下说明,回答问题1至问题4,将解答填入答题纸对应的解答栏内。【 说明】某校园网拓扑结构如图 1-1 所示,其中网络中心与图书馆相距约 700 米。要求干线带宽为千兆,百兆到桌面。【问题1】(6 分 )为图1-1中(1)~(3)空缺处选择合适设备。(1)~(3)备选答案:A. 路由器B. 接入交换机C. 三层核心交换机D. 远程访问服务器

试题四(共15 分)阅读以下说明,回答问题1至问题4,将解答填入答题纸对应的解答栏内。【说明】在Windows Server 2003系统中,用户分为本地用户和域用户,本地用户的安全策略用“本地安全策略”设置,域用户的安全策略通过活动目录管理。【问题1】(2 分)在“本地安全设置”中启用了“密码必须符合复杂性要求”功能,如图 4-1 所示,则用户“ABC”可以采用的密码是 (1) 。(1)备选答案:A.ABC007 B.deE#3 C.Test123 D.adsjfs

该系统应在功能上分为政务外网应用及政务内网应用两个模块。用200字分析这两个模块的主要功能。从下列的4道试题(试题二至试题五)中任选2道解答。如果解答的试题数超过2道,则题号小的2道有效。

●试题二阅读下列函数说明和C代码,将应填入(n)处的字句写在答题纸的对应栏内。【说明】该程序运行后,输出下面的数字金字塔【程序】includestdio.hmain (){char max,next;int i;for(max=′1′;max=′9′;max++){for(i=1;i=20- (1) ;++i)printf(" ");for(next= (2) ;next= (3) ;next++)printf("%c",next);for(next= (4) ;next= (5) ;next--)printf("%c",next);printf("\n");}}

●试题一阅读下列说明和流程图,将应填入(n)的字句写在答题纸的对应栏内。【说明】下列流程图(如图4所示)用泰勒(Taylor)展开式sinx=x-x3/3!+x5/5!-x7/7!+…+(-1)n×x 2n+1/(2n+1)!+…【流程图】图4计算并打印sinx的近似值。其中用ε(0)表示误差要求。

●试题一阅读下列说明和流程图,将应填入(n)处的语句写在答题纸的对应栏内。【说明】下列流程图用于从数组K中找出一切满足:K(I)+K(J)=M的元素对(K(I),K(J))(1≤I≤J≤N)。假定数组K中的N个不同的整数已按从小到大的顺序排列,M是给定的常数。【流程图】此流程图1中,比较"K(I)+K(J)∶M"最少执行次数约为 (5) 。图1

试题三(共 15 分)阅读以下说明和 C 程序,将应填入 (n) 处的字句写在答题纸的对应栏内。

从下列2道试题(试题五至试题六)中任选 1道解答。如果解答的试题数超过1道,则题号小的1道解答有效。试题五(共15分)阅读以下说明、图和C++代码,填补C++代码中的空缺(1)~(5),将解答写在答题纸的对应栏内。【说明】已知对某几何图形绘制工具进行类建模的结果如图5.1所示,其中Shape为抽象类(应至少包含一个纯虚拟( virtual)函数),表示通用图形,Box表示矩形,Ellipse表示椭圆,Circle表示圆(即特殊的椭圆),Line表示线条。下面的C++代码用于实现图5-1所给出的设计思路,将其空缺处填充完整并编译运行,输出结果为:EllipseCircleEllipseCE【C++代码】include stringinclude iostreamusing namespace std;class Shape{public:Shape(const string name){m_name= name;}~Shape(){}(1) void paint() = 0;stringgetName()const {retumm name;}Private:string m_name;};//Box和 Line类的定义与 Ellipse类似,其代码略classEllipse (2) {public:Ellipse(const string name) : Shape(name){ cout"Ellipse" endl; }Voidpaint() { coutgetName()endl;}};classCircle (3) {public:Circle(const string name) : Ellipse(name){ cout"Circl"endl; }};class Diagram {public:void drawAShap(Shape* shape){ shape-paint(); }void drawShapes() {shapes[0] = new Circle("C");shapes[l] = new Ellipse("E");for (int i=O;i2; ++1) {drawAShap(shapes[i]);}}void close (){ /*删除形状,代码略 */ }private:Shape* shapes[2];};int main( ){Diagram* diagram = (4)diagram-drawShapes();diagram-close ();(5) diagram;}

图2-1是基于软交换的网络分层模型。请将选项应填入(n)处的字句写在答题纸对应的解答栏内。

阅读下列说明和C++-代码,将应填入(n)处的字句写在答题纸的对应栏内。 【说明】 某发票(lnvoice)由抬头(Head)部分、正文部分和脚注(Foot)部分构成。现采用装饰(Decorator)模式实现打印发票的功能,得到如图5-1所示的类图。【C++代码】 #include using namespace std; class invoice{ public: (1){ cout

试题四(共 15 分)阅读以下说明和代码,填补代码中的空缺,将解答填入答题纸的对应栏内。【说明】 图是很多领域中的数据模型,遍历是图的一种基本运算。从图中某顶点 v出发进行广度优先遍历的过程是:①访问顶点 v;②访问 V 的所有未被访问的邻接顶点 W1 ,W2 ,..,Wk;③依次从这些邻接顶点 W1 ,W2 ,..,Wk 出发,访问其所有未被访问的邻接顶 点;依此类推,直到图中所有访问过的顶点的邻接顶点都得到访问。显然,上述过程可以访问到从顶点 V 出发且有路径可达的所有顶点。对于 从 v 出发不可达的顶点 u,可从顶点 u 出发再次重复以上过程,直到图中所有顶 点都被访问到。例如,对于图 4-1 所示的有向图 G,从 a 出发进行广度优先遍历,访问顶点 的一种顺序为 a、b、c、e、f、d。图 4-1设图 G 采用数组表示法(即用邻接矩阵 arcs 存储),元素 arcs[i][ j]定义如下: 图 4-1 的邻接矩阵如图 4-2 所示,顶点 a~f 对应的编号依次为 0~5.因此,访问顶点 a 的邻接顶点的顺序为 b,c,e。函数 BFSTraverse(Graph G)利用队列实现图 G 的广度优先遍历。相关的符号和类型定义如下:#define MaxN:50 /*图中最多顶点数*/ typedef int AdjMatrix[MaxN][MaxN];typedef struct{int vexnum,edgenum;/*图中实际顶点数和边(弧)数*/ AdjMatrix arcs; /*邻接矩阵*/)Graph;typedef int QElemType; enum {ERROR=0;OK=l};代码中用到的队列运算的函数原型如表 4-1 所述,队列类型名为 QUEUE。表 4-1 实现队列运算的函数原型及说明 【代码】int BFSTraverse(Graph G){//图 G 进行广度优先遍历,图采用邻接矩阵存储unsigned char*visited; //visited[]用于存储图 G 中各顶点的访问标 志,0 表示未访问int v,w;u; QUEUEQ Q;∥申请存储顶点访问标志的空间,成功时将所申请空间初始化为 0 visited=(char*)calloc(G.vexnum, sizeof(char));If( (1) ) retum ERROR; (2) ; //初始化 Q 为空队列 for( v=0; v } free(visited);return OK;)//BFSTraverse从下列的 2 道试题(试题五至试题六)中任选 1 道解答。请在答题纸上的 指定位置处将所选择试题的题号框涂黑。若多涂或者未涂题号框,则对题号最小 的一道试题进行评分。

阅读下列说明,补充(1)-(9),将解答填入答题纸的对应栏内。

阅读下列说明,回答问题1和问题2,将解答写在答题纸的对应栏内。【说明】 Windows 系统的用户管理配置中,有多项安全设置,如图2-1 所示。

某单位招聘面试,每次从试题库调用一道试题,若调用的是A类型试题,则使用后该试题回库,并增补一道A类型试题和一道B类型试题入库,此次调题工作结束;若调用的是B类型试题,则使用后该试题回库,此次调题结束。试题库中现有n+m道试题,其中有n道A类型试题和m道B类型试题,以x表示两次调题工作完成后,试题库中A类型试题数量。(1)求X=n+2的概率;(2)设n=m,求X的分布列和均值.

阅读下列说明和C++代码,回答问题,将解答填入答题纸的对应栏内。【说明】某航空公司的会员积分系统将其会员划分为:普卡 (Basic)、银卡(Silver)和金卡 (Gold) 三个等级。非会员 (NonMember) 可以申请成为普卡会员。会员的等级根据其一年内累积 的里程数进行调整。描述会员等级调整的状态图如图 5-1 所示。现采用状态 (State) 模式实现上述场景,得到如图 5-2 所示的类图。【问题1】(15分)阅读上述说明和C++代码,将应填入 (n) 处的字句写在答题纸的对应栏内。

阅读下列说明和?C++代码,将应填入(n)处的字句写在答题纸的对应栏内。【说明】阅读下列说明和?Java代码,将应填入?(n)?处的字句写在答题纸的对应栏内。【说明】某快餐厅主要制作并出售儿童套餐,一般包括主餐(各类比萨)、饮料和玩具,其餐品种类可能不同,但其制作过程相同。前台服务员?(Waiter)?调度厨师制作套餐。现采用生成器?(Builder)?模式实现制作过程,得到如图?6-1?所示的类图。

如果一道试题有75%的解答人都答不对,说明这道试题()A、有质量B、有水平C、有难度D、有意义