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

軟題庫 學習課程
試卷年份2015年上半年
試題題型【分析簡答題】
試題內(nèi)容

閱讀下列說明和Java代碼,將應填入   (n)    處的字句寫在答題紙的對應欄內(nèi)。
【說明】
某圖書管理系統(tǒng)中管理著兩種類型的文獻:圖書和論文?,F(xiàn)在要求統(tǒng)計所有館藏文獻的總頁碼(假設圖書館中有一本540頁的圖書和兩篇各25頁的論文,那么館藏文獻的總頁碼就是590頁)。采用Visitor(訪問者)模式實現(xiàn)該要求,得到如圖6-1所示的類圖。

圖6-1 Visitor模式類圖
【Java 代碼】
import java.util.*;
interface LibraryVisitor {
(1)   ;
(2)   ;
void printSum();
}
class LibrarySumPrintVisitor implements LibraryVisitor {          //打印總頁數(shù)
private int sum = 0;
public void visit(Book p_book) {
sum = sum + p_book.getNumberOfPages();
}
public void visit(Article p_article) {
sum = sum + p_article.getNumberOfPages();
}
public void printSum(){
System.out.println("SUM = " + sum);
}
}
interface LibraryItemInterface {
(3)       ;
}
class  Article implements LibraryItemInterface{
private String m_title;      //論文名
private String m_author;    //論文作者
private int    m_start_page;
private int    m_end_page;
public Article(String p_author, String p_title,int p_start_page,int p_end_page){
m_title=p_title;
m_author= p_author;
m_end_page=p_end_page;
}
public int getNumberOfPages(){
return m_end_page - m_start_page;
}
public void accept(LibraryVisitor Visitor){
(4)       ;
}
}
class Book implements LibraryItemInterface{
private String m_title;         //書名
private String m_author;     //書作者
private int    m_pages;        //頁教
public Book(String p_author, String p_title,int p_ pages){
m_title= p_title;
m_author= p_author;
m_pages= p_pages;
}
public int getNumberOfPages(){
return m_pages;
}
public void accept(LibraryVisitor visitor){
(5)       ;
}
}

查看答案

相關試題

3題: 閱讀下列說明和圖,回答問題1至問題3,將解答填入答題紙的對應欄內(nèi)。
【說明】
某物品拍賣網(wǎng)站為參與者提供物品拍賣平臺,組織拍賣過程,提供在線或線下交易服務。網(wǎng)站主要功能描述如下:
(1)拍賣參與者分為個人參與者和團體參與者兩種。不同的團體也可以組成新的團體參與拍賣活動。網(wǎng)站記錄每個參與者的名稱。
(2)一次拍賣中,參與者或者是買方,或者是賣方。
(3)一次拍賣只拍出來自一個賣方的一件拍賣品;多個買方可以出價:賣方接受其中一個出價作為成交價,拍賣過程結束。
(4)在拍賣結算階段,買賣雙方可以選擇兩種成交方式:線下成交,買賣雙方在事 先約定好的成交地點,當面完成物價款的支付和拍賣品的交付;在線成交,買方通過網(wǎng)上支付平臺支付物價款,拍賣品由賣方通過快遞郵寄給買方。
一次拍賣過程的基本事件流描述如下:
(1)賣方在網(wǎng)站上發(fā)起一次拍賣,并設置本次拍賣的起拍價。
(2)確定拍賣標的以及拍賣標的保留價(若在拍賣時間結束時,所有出價均低于拍賣標的保留價,則本次拍賣失敗)。
(3)在網(wǎng)站上發(fā)布本次拍賣品的介紹。
(4)買方參與拍賣,給出竟拍價。
(5)賣方選擇接受一個竟拍價作為成交價,結束拍賣。
(6)系統(tǒng)記錄拍賣成交價,進入拍賣結算階段。
(7)賣方和買方協(xié)商拍賣品成交方式,并完成成交
現(xiàn)采用面向?qū)ο蠓椒▽ο到y(tǒng)進行分析與設計,得到如表3-1所示的類列表以及如圖3-1所示的類圖,類中關鍵屬性與方法如表3-2所示。



【問題1】(7分)
根據(jù)說明中的描述,給出圖3-1中(1)~(7)所對應的類名(類名使用表3-1中給出的序號)。
【問題2】(5分)
根據(jù)說明中的描述,確定表3-2中的屬性/方法分別屬于哪個類(類名、方法/屬性名使用表3-1、3-2中給出的序號)。
【問題3】(3分)
在圖3-1采用了何種設計模式?以100字以內(nèi)文字說明采用這種設計模式的原因。
答案解析與討論:m.xiexiliangjiufa.com/st/3815324092.html

4題: 閱讀下列說明和C代碼,回答問題1至問題3,將解答寫在答題紙的對應欄內(nèi)。
【說明】
n-皇后問題是在n行n列的棋盤上放置n個皇后,使得皇后彼此之間不受攻擊,其規(guī)則是任意兩個皇后不在同一行、同一列和相同的對角線上。
擬采用以下思路解決n-皇后問題:第i個皇后放在第i行。從第一個皇后開始,對每個皇后,從其對應行(第i個皇后對應第i行)的第一列開始嘗試放置,若可以放置,確定該位置,考慮下一個皇后;若與之前的皇后沖突,則考慮下一列;若超出最后一列,則重新確定上一個皇后的位置。重復該過程,直到找到所有的放置方案。
【C代碼】
下面是算法的C語言實現(xiàn)。
(1)常量和變量說明
pos:一維數(shù)組,pos[i]表示第i個皇后放置在第i行的具體位置
count:統(tǒng)計放置方案數(shù)
i,j,k:變量
N:皇后數(shù)
(2)C程序
#include
#include
#define N4
/*判斷第k個皇后目前放置位置是否與前面的皇后沖突*/
in isplace(int pos[], int k) {
int i;
for(i=1; i if(  (1)  || fabs(i-k)  ══ fabs(pos[i] - pos[k])) {
return 0;
}
}
return 1;
}

int main() {
int i,j,count=1;
int pos[N+1];
//初始化位置
for(i=1; i<=N; i++) {
pos[i]=0;
}
(2)    ;
while(j>=1) {
pos[j]= pos[j]+1;
/*嘗試擺放第i個皇后*/
while(pos[j]<=N&& (3)_) {
pos[j]= pos[j]+1;
}
/*得到一個擺放方案*/
if(pos[j]<=N&&j══ N) {
printf("方案%d: ",count++);
for(i=1; i<=N; i++){
printf("%d  ",pos[i]);
}
printf("\n");
}
/*考慮下一個皇后*/
if(pos[j]<=N&& (4) ) {
j=j+1;
} else{ //返回考慮上一個皇后
pos[j]=0;
(5)    ;
}
}
return 1;
}
【問題1】(10分)
根據(jù)以上說明和C代碼,填充C代碼中的空(1)~(5)。
【問題2】(2分)
根據(jù)以上說明和C代碼,算法采用了    (6)   設計策略。
【問題3】(3分)
上述C代碼的輸出為:
(7)   。
答案解析與討論:m.xiexiliangjiufa.com/st/3815415695.html

5題: 閱讀下列說明和C++代碼,將應填入    (n)    處的字句寫在答題紙的對應欄內(nèi)。
【說明】
某圖書管理系統(tǒng)中管理著兩種類型的文獻:圖書和論文?,F(xiàn)在要求統(tǒng)計所有館藏文獻的總頁碼(假設圖書館中有一本540頁的圖書和兩篇各25頁的論文,那么館藏文獻的總頁碼就是590頁)。采用Visitor(訪問者)模式實現(xiàn)該要求,得到如圖5-1所示的類圖。

圖5-1 Visitor模式類圖

【C++代碼】
class LibraryVisitor;
class LibraryItemInterface{
public:
(1)      ;
};
class Article : public LibraryItemInterface {
private:
string  m_title;        //論文名
string  m_author;    //論文作者
int m_start_page;
int m_end_page;
public:
Article(string p_author, string p_title, int p_start_page,int p_end_page );
int getNumberOfPages();
void accept(Library Visitor* visitor);
};
class Book : public LibraryItemInterface {
private:
string  m_title;       //書名
string  m_author;   //作者
int m_pages;         //頁數(shù)
public:
Book(string p_author, string p_title, int p_pages);
int getNumberOfPages();
void accept(LibraryVisitor* visitor);
};
class LibraryVisitor {
public:
(2)     ;
(3)     ;
virtual void printSum() = 0;
};
class LibrarySumPrintVisitor : public LibraryVisitor  {          //打印總頁數(shù)
private:
int sum;
public:
LibrarySumPrintVisitor();
void visit(Book* p_book);
void visit(Article* p_article);
void printSum();
};
// visitor.cpp
int Article: :getNumberOfPages(){
retum m_end_page - m_start_page;
}
void Article::accept(LibraryVisitor* visitor) {       (4)      ;}
Book: :Book(string p_author, string p_title, int p_pages ) {
m_title = p_title;
m_author = p_author;
m_pages = p_pages;
}
int Book::getNumberOfPages(){    return m_pages;  }
void Book::accept(LibraryVisitor* visitor){       (5)     ;  }
//其余代碼省略
答案解析與討論:m.xiexiliangjiufa.com/st/38155962.html