女人久久久www免费人成看片,国内自拍偷拍网,国产一区二区三区免费在线观看,欧美精品三区四区,91久久国产综合久久91,欧美成人精品第一区二区三区 ,美女成人在线观看

軟題庫 學(xué)習(xí)課程
試卷年份2010年下半年
試題題型【分析簡答題】
試題內(nèi)容

閱讀下列說明和Java代碼,將應(yīng)填入(n)處的字句寫在答題紙的對應(yīng)欄內(nèi)。
【說明】
某公司的組織結(jié)構(gòu)圖如圖6-1所示,現(xiàn)采用組合(Composition)設(shè)計模式來設(shè)計,得到如圖6-2所示的類圖。
其中Company為抽象類,定義了在組織結(jié)構(gòu)圖上添加(Add)和刪除(Delete)分公司/辦事處或者部門的方法接口。類ConcreteCompany表示具體的分公司或者辦事處,分公司或辦事處下可以設(shè)置不同的部門。類HRDepartment和FinanceDepartment分別表示人力資源部和財務(wù)部。

圖6-1  組織結(jié)構(gòu)圖

圖6-2  類圖

【Java代碼】
import java.util.*;
(1)Company {
protectedString    name;
public Company(String name) { (2)= name; }
public abstract  void Add(Company  c); //增加子公司、辦尊處或部門
public abstract  void Delete(Company  c);    //刪除子公司、辦事處或部門
}

class  ConcreteCompany  extends  Company {
private List<(3)> children = new ArrayList<(4)>();
//存儲子公司、辦事處或部門
public  ConcreteCompany(String  name)  {  super(name); }
public  void  Add(Company c)   {  (5).add(c);    }
public  void  Delete(Company  c)   {(6).remove(c);    }
}

class HRDepartment extends Company {
public  HRDepartment(String  name)  { super(name);  }
//其他代碼省略
}

class  FinanceDepartment   extends  Company   {
public  FinanceDepartment(String  name)   { super(name); }
//其他代碼省略
}

public  class  Test  {
public  static void  main(String[]  args)   {
ConcreteCompany root =new ConcreteCompany("北京總公司");
root.Add(new HRDepartment("總公司人力資源部") );
root.Add(new FinanceDepartment("總公司財務(wù)部") );

ConcreteCompany comp =new ConcreteCompany("上海分公司");
comp.Add(new HRDepartment("上海分公司人力資源部") );
comp.Add(new FinanceDepartment("上海分公司財務(wù)部"));
(7);

ConcreteCompany  compl  =  new ConcreteCompany("南京辦事處");
compl.Add(new HRDepartment("南京辦事處人力資源部") );
compl.Add(new Fina.nceDepartment ("南京辦事處財務(wù)部") );
(8);    // 其他代碼省略
}
}

查看答案

相關(guān)試題

3題: 閱讀下列說明和圖,回答問題1至問題3,將解答填入答題紙的對應(yīng)欄內(nèi)。
【說明】
某網(wǎng)上藥店允許顧客憑借醫(yī)生開具的處方,通過網(wǎng)絡(luò)在該藥店購買處方上的藥品。該網(wǎng)上藥店的基本功能描述如下:
(1)注冊。顧客在買藥之前,必須先在網(wǎng)上藥店注冊。注冊過程中需填寫顧客資料以及付款方式(信用卡或者支付寶賬戶)。此外顧客必須與藥店簽訂一份授權(quán)協(xié)議書,授權(quán)藥店可以向其醫(yī)生確認(rèn)處方的真?zhèn)巍?br />(2)登錄。已經(jīng)注冊的顧客可以登錄到網(wǎng)上藥房購買藥品。如果是沒有注冊的顧客,系統(tǒng)將拒絕其登錄。
(3)錄入及提交處方。登錄成功后,顧客按照“處方錄入界面”顯示的信息,填寫開具處方的醫(yī)生的信息以及處方上的藥品信息。填寫完成后,提交該處方。
(4)驗證處方。對于已經(jīng)提交的處方(系統(tǒng)將其狀態(tài)設(shè)置為“處方已提交”),其驗證過程為:
①核實醫(yī)生信息。如果醫(yī)生信息不正確,該處方的狀態(tài)被設(shè)置為“醫(yī)生信息無效”,并取消這個處方的購買請求;如果醫(yī)生信息是正確的,系統(tǒng)給該醫(yī)生發(fā)送處方確認(rèn)請求,并將處方狀態(tài)修改為“審核中”。
②如果醫(yī)生回復(fù)處方無效,系統(tǒng)取消處方,并將處方狀態(tài)設(shè)置為“無效處方”。如果醫(yī)生沒有在7天內(nèi)給出確認(rèn)答復(fù),系統(tǒng)也會取消處方,并將處方狀態(tài)設(shè)置為“無法審核”。
③如果醫(yī)生在7天內(nèi)給出了確認(rèn)答復(fù),該處方的狀態(tài)被修改為“準(zhǔn)許付款”。
系統(tǒng)取消所有未通過驗證的處方,并自動發(fā)送一封電子郵件給顧客,通知顧客處方被取消以及取消的原因。
(5)對于通過驗證的處方,系統(tǒng)自動計算藥品的價格并郵寄藥品給己經(jīng)付款的顧客。
該網(wǎng)上藥店采用面向?qū)ο蠓椒ㄩ_發(fā),使用UML進(jìn)行建模。系統(tǒng)的類圖如圖3-1所示。

?【問題1】(8分)
根據(jù)說明中的描述,給出圖3-1中缺少的C1~C5所對應(yīng)的類名以及(1)~(6)處所對應(yīng)的多重度。
?【問題2】(4分)
圖3-2給出了“處方”的部分狀態(tài)圖。根據(jù)說明中的描述,給出圖3-2中缺少的S 1~S4所對應(yīng)的狀態(tài)名以及(7)~(10)處所對應(yīng)的遷移(transition)名。

答案解析與討論:m.xiexiliangjiufa.com/st/380999198.html

4題: 閱讀下列說明和C代碼,回答問題1至問題3,將解答寫在答題紙的對應(yīng)欄內(nèi)。
【說明】
堆數(shù)據(jù)結(jié)構(gòu)定義如下:
對于n個元素的關(guān)鍵字序列{a1,a2,...,an},當(dāng)且僅當(dāng)滿足下列關(guān)系時稱其為堆。

在一個堆中,若堆頂元素為最大元素,則稱為大頂堆;若頂堆元素為最小元素,則稱為小頂堆。堆常用完全二叉樹表示,圖4-1是一個大頂堆的例子。

圖4-1  大頂堆示例
堆數(shù)據(jù)結(jié)構(gòu)常用于優(yōu)先隊列中,以維護(hù)由一組元素構(gòu)成的集合。對應(yīng)于兩類堆結(jié)構(gòu),優(yōu)先隊列也有最大優(yōu)先隊列和最小優(yōu)先隊列,其中最大優(yōu)先隊列采用大頂堆,最小優(yōu)先隊列采用小頂堆。以下考慮最大優(yōu)先隊列。
假設(shè)現(xiàn)已建好大頂堆A,且已經(jīng)實現(xiàn)了調(diào)整堆的函數(shù)heapify(A,N,INDEX)。
下面將C代碼中需要完善的三個函數(shù)說明如下:
(1)heapMaximum(A):返回大頂堆A中的最大元素。
(2)heapExtractMax(A):去掉并返回大頂堆A的最大元素,將最后一個元素“提前”到堆頂位置,并將剩余元素調(diào)整成大頂堆。
(3)maxHeapInsert(A,key):把元素key插入到大頂堆A的最后位置,再將A調(diào)整成大頂堆。
優(yōu)先隊列采用順序存儲方式,其存儲結(jié)構(gòu)定義如下:
#define PARENT(i)   i/2
typedef struct array{
int*int_array;  //優(yōu)先隊列的存儲空間首地址
int array_size;  //優(yōu)先隊列的長度
int capacity;  //優(yōu)先隊列存儲空間的容量
}ARRAY;
【C代碼】
(1)函數(shù)heapMaximum
int heapMaximum(ARRAY*A){  return  (1)  ;  }
(2)函數(shù)heapExtractMax
int heapExtractMax(ARRAY*A){
int max;
max=A->int_array[0];
(2);
A->array_size --;
heapify(A,A->array_size,0);  //將剩余元素調(diào)整成大頂堆
return max;
}
(3)函數(shù)maxHeapInsert
int maxHeapInsert(ARRAY *A,int key){
int  i,*p;
if  (A->array_size == A->capacity)    {  //存儲空間的容量不夠時擴充空間
p=(int*)realloc(A->int_array,A->capacity *2 * sizeof(int));
if (!p) return -1;
A->int_array = p;
A->capacity = 2 * A->capacity;
}
A->array_size ++;
i = (3) ;
while (i > 0 && (4)){
A->int_array[i] = A->int_array[PARENT(i)];
i = PARENT(i);
}
(5);
return 0;
}
答案解析與討論:m.xiexiliangjiufa.com/st/3810012907.html

5題: 閱讀下列說明和C++代碼,將應(yīng)填入(n)處的字句寫在答題紙的對應(yīng)欄內(nèi)。
【說明】
某公司的組織結(jié)構(gòu)圖如圖5-1所示,現(xiàn)采用組合(Composition)設(shè)計模式來構(gòu)造該公司的組織結(jié)構(gòu),得到如圖5-2所示的類圖。
圖5-1  組織結(jié)構(gòu)圖
圖5-2  類圖
其中Company為抽象類,定義了在組織結(jié)構(gòu)圖上添加(Add)和刪除(Delete)分公司/辦事處或者部門的方法接口。類ConcreteCompany表示具體的分公司或者辦事處,分公司或辦事處下可以設(shè)置不同的部門。類HRDepartment和FinanceDepartment分別表示人力資源部和財務(wù)部。
【C++代碼】
#include
#include
#include
using namespace std;
class  Company   {//抽象類
protected:
strìng 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 ConcreteCompany("北京總公司") ;
root->Add(new HRDepartment("總公司人力資源部") ) ;
root->Add(new FinanceDepartment("總公司財務(wù)部") ) ;

ConcreteCompany *comp = new ConcreteCompany("上海分公司") ;
comp->Add(new HRDepartment("上海分公司人力資源部") ) ;
comp->Add(new FinanceDepartment("上海分公司財務(wù)部") ) ;
(7);

ConcreteCompany *compl = new ConcreteCompany("南京辦事處") ;
compl->Add(new HRDepartment("南京辦事處人力資源部") ) ;
compl->Add(new FinanceDepartment("南京辦事處財務(wù)部") ) ;
(8);      //其他代碼省略
}
答案解析與討論:m.xiexiliangjiufa.com/st/3810116336.html