wrod版試題 | word版答案 |
●試題一
閱讀下列說明、圖1和圖2,回答問題1、問題2和問題3。
【說明】
下面是某租車信息管理系統(tǒng)的介紹:該車庫中備有若干車輛,每輛車有車號、車牌、車名、價格等屬性。車庫不定期地購買并注冊新車供用戶借用,也可將報廢的舊車注銷以停止租用。
車庫可為眾多用戶提供服務(wù)。每個用戶在借車之前需注冊姓名、地址等內(nèi)容。每個用戶最多可同時借3輛車。每輛車借期7天;若有一輛車超期,則不可再借其他車。一輛車超期一天罰款250元。若一輛車超期3周不歸還,則發(fā)布通告。若用戶借的車丟失,在罰款處理之前不能借車,每輛報失的車罰款該車目前市價(包括折舊)的1.2倍。注冊新用戶不受限制;而注銷用戶之前,該用戶必須歸還所有借的車,或者報失并接受罰款。
【狀態(tài)圖1】
圖1車輛的狀態(tài)圖
【問題1】
分析車輛的狀態(tài)和事件,指出圖1中的 (1) 、 (2) 、 (3) 、 (4) 分別是什么?
【問題2】
分析用戶的狀態(tài)和事件,指出圖2中的 (5) 、 (6) 、 (7) 、 (8) 分別是什么?(注意,用戶與車輛在狀態(tài)圖中的關(guān)系)。
【問題3】
指出UML中活動圖的含義,并說明活動圖和狀態(tài)圖的區(qū)別與聯(lián)系。
【狀態(tài)圖2】
圖2用戶的狀態(tài)圖
s
●試題二
閱讀以下說明和流程圖(如圖2所示),回答問題1和問題2,將答案寫在答卷的對應(yīng)欄內(nèi)。
【說明】
本流程圖實現(xiàn)從成績文件生成學(xué)生成績一覽表。
某中學(xué)某年級的學(xué)生成績數(shù)據(jù)(分數(shù))登錄在成績文件F0中,其記錄格式見表2:
由該成績文件生成見表3的學(xué)生成績一覽表。生成的學(xué)生成績一覽表按學(xué)號升序排列。表中的名次是指該生相應(yīng)課程在年級中的名次。
流程圖中的順序文件F0是學(xué)生成績文件,F(xiàn)0文件經(jīng)處理1處理后產(chǎn)生順序文件F,然后經(jīng)過處理2至處理4對文件F進行處理和更新。在處理5中,僅對文件F的紀(jì)錄進行學(xué)生成績一覽表的編排輸出,不進行排序和增加名次等處理。
【問題1】
流程圖中文件F的紀(jì)錄格式設(shè)定為見表4形式:
其中的①、②應(yīng)定義為何種數(shù)據(jù)項?
希望與其他軟考考生進行交流?點擊進入軟考論壇>>>
更多信息請訪問:考試吧軟件水平考試欄目
[NextPage]
【問題2】
簡述處理2、處理3和處理4作何種處理,若有排序處理則需指明排序的鍵及序(升序或降序)。
【流程圖】
圖3
希望與其他軟考考生進行交流?點擊進入軟考論壇>>>
更多信息請訪問:考試吧軟件水平考試欄目
[NextPage]
●試題三
根據(jù)題意回答以下問題:
設(shè)某商業(yè)集團數(shù)據(jù)庫中有3個實體集:一是"商店"實體集,屬性有商店編號,商店名,地址等;二是"商品"實體集,屬性有商品號,商品名,規(guī)格,單價等;三是"職工"實體集,屬性有職工編號,姓名,性別,業(yè)績等。商店與商品間存在"銷售"聯(lián)系,每個商店可以銷售多種商品,每種商品也可以在多個商店和職工間存在"聘用"聯(lián)系,每個商店有許多職工,每個職工只能在一個商店工作,商店聘用職工有聘期和月薪。
問題:
1.請根據(jù)題意完善下面ER圖。
圖4
2.將ER圖轉(zhuǎn)換成關(guān)系模型,并注明主鍵和外鍵。
3.請寫出要查出員工"小李"在三月份的銷售業(yè)績的關(guān)系代數(shù)式。
●試題四
下列給定程序中,函數(shù)fun()的功能是:對N名學(xué)生的學(xué)習(xí)成績,按從高到低的順序找出前m(m≤10)名學(xué)生來,并將這些學(xué)生數(shù)據(jù)存放在一個動態(tài)分配的連續(xù)存儲區(qū)中,此存儲區(qū)的首地址作為函數(shù)值返回。
注意:部分源程序給出如下。
請勿改動主函數(shù)main和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)fun()的橫線上填入所編寫的若干表達式或語句。
試題程序:
#include<stdio.h>
#include<mallo
C.h>
#include<string.h>
#include<conio.h>
#define N 10
typedef struct ss
{
char num[10];
int order;
}STU;
STU *fun(STU a[], int m)
{
STU b[N],*tt;
int i,j,k;
(1) ;
for(i=0; i<N; i++)
b[i]=a[i];
for (k=0;k<m;k++)
{
for(i=j=0;i<N;i++)
if ( (2) )
j=i;
tt[k]=b[j];
b[j].order=0;
}
return (3) ;
}
outresult(STU a[],FILE *pf)
{
int i;
for(i=0;i<N; i++)
fprintf(pf,"No=%s Mark=%d\n",
a[i].num,a[i].order);
fprintf(pf,"\n\n");
}
main()
{
STU [N]={{"A01",80},{"A02",79},
{"A03",66},{"A04",82},{"A05",87},
{"A06",93},{"A07",78},{"A08",60},
{"A09",85},{"A10",73}};
STU *p_order;
int i,m;
clrscr();
printf("*** The Origial data ***\n");
outresult(a, stdout);
printf("\nGive the numeber of the
students who have better score:");
scanf("%d",&m);
while (m>10)
{
printf("\nGive the number of the
studets who have better score:");
scanf("%d",&m);
}
p_order=fun(a,m);
printf("*** THE RESULT ***\n");
printf("*** The top students ***\n");
for(i=0; i<m; i++)
printf(" %s %d\n",
p_order[i].num,p_order[i].order);
free(p_order);
}
希望與其他軟考考生進行交流?點擊進入軟考論壇>>>
更多信息請訪問:考試吧軟件水平考試欄目
[NextPage]
●試題五
閱讀下列程序說明和C代碼,將應(yīng)填入(n)處的字句寫在答題紙的對應(yīng)欄內(nèi)。
【程序5說明】
設(shè)M叉樹采用列表法表示,即每棵子樹對應(yīng)一個列表,列表的結(jié)構(gòu)為:子樹根結(jié)點的值部分(設(shè)為一個字符)和用"()"括起來的各子樹的列表(如有子樹的話),各子列表間用","分隔。例如下面的三叉樹可用列表a(b(c,d),e,f(g,h,i))表示。
本程序輸入列表,生成一棵M叉樹,并由M叉樹輸出列表。假定輸入無錯誤。
【程序5】
#include<stdio.h>
#include<stdli
B.h>
#define M 3
typedef struct node{char val;
struct node*subTree[M];
}NODE;
char buf[255],*str=buf;
NODE*d=NULL
NODE*makeTree()/*由列表生成M叉樹*/
{int k;NODE*s;
s= (1) ;
s->val=*str++;
for(k=0;k<M;k++)s->subTree[k]=NULL;
if(*str=′(′){
k=0;
do{str++;
s->subTree[k]= (2) ;
if(*str==′)′){str++;break;}
k=k+1;
}while( (3) );
}
return s;
}
void walkTree(NODE*t)/*由M叉樹輸出列表*/
{int i;
if(t!=NULL){
(4)
if(t->subTree[0]==NULL)return;
putchar(′(′);
for(i=0;i<M;i++){
(5) ;
if(i!=M-1&&t->subTree[i+1]!= NULL)
putchar(′,′);
}
putchar(′)′);
}
}
void main()
{printf("Enter exp:");
scanf("%s",str);
d=makeTree();
walkTree(d);putchar(′\n′);
}
●試題六
閱讀下列程序說明和C++代碼,將應(yīng)填入(n)處的字句寫在答卷的對應(yīng)欄內(nèi)。
【說明】
源程序中定義了Circle類與Money類,Circle類可對半徑為r的圓進行周長與面積的計算,而Money類用于計算一圓形游泳池的造價。游泳池四周有原形過道,過道外圍上柵欄,過道寬度為3米,根據(jù)鍵入的游泳池半徑,每米柵欄價格及每平方米過道價格,即可計算出游泳池的造價。請按要求完成下列操作,將程序補充完整。
①定義符號常量PI(值為3.14159f)與WIDTH(值為3.00f),分別用于表示圓周率與過道的固定寬度。
②定義Circle類默認構(gòu)造函數(shù),把私有成員radius初始化為參數(shù)r的值。
③完成Money類默認構(gòu)造函數(shù)的定義,把私有成員FencePrice(每米柵欄的價格)、 ConcretePrice(每平方米過道的價格)初始化為參數(shù)f,c的值。
④完成Money類成員函數(shù)float Money::TotalMoney(float fencelen, float conarea)的定義,根據(jù)參數(shù)fencelen(柵欄的長度)和conarea(過道的面積),返回柵欄與過道的總造價。
注意:除在指定位置添加語句之外,請不要改動程序中的其他內(nèi)容。
源程序文件test4.cpp清單如下:
#include <iostream.h>
(1)
class Circle
{
private:
float radius;
public:
(2)
float Circumference(){return 2 * PI * radius;}
float Area(){return PI * radius * radius;}
};
class Money
{
private:
float FencePrice;
float ConcretePrice;
public:
Money(float f,float c);
float TotalMoney(float fencelen, float conarea);
};
Money::Money(float f,float c)
{
(3)
}
float Money::TotalMoney(float fencelen, float conarea)
{
(4)
}
void main()
{
float radius,fence,concrete;
cout.setf(ios::fixed);
cout.setf(ios::showpoint);
cout.precision (2) ;
cout << "Enter the radius of the pool: ";
cin >> radius;
cout << "Enter the FencePrice: ";
cin >> fence;
cout << "Enter the ConcretePrice: ";
cin >> concrete;
Circle Pool(radius);
Circle PoolRim(radius + WIDTH);
Money mon(fence,concrete);
float totalmoney=mon.TotalMoney(PoolRim.Circumference(),(PoolRim.Area() - Pool.Area()));
cout << "The total money is RMB " << totalmoney << endl;
}
希望與其他軟考考生進行交流?點擊進入軟考論壇>>>
更多信息請訪問:考試吧軟件水平考試欄目
[NextPage]
●試題七
【說明】
下面是一個Applet程序,其功能是將完整的圖像顯示于Applet的區(qū)塊中,然后可以通過拖動鼠標(biāo)讓圖像隨著鼠標(biāo)拖動的軌跡而移動。
程序運行結(jié)果如圖5所示。
全真模擬試卷(四)第15頁(共16頁) 全真模擬試卷(四)第16頁(共16頁)
圖5
import java.applet.*;
import java.awt.*;
/*
<applet code="ex4_7.class" width=800 height=400 >
</applet>
*/
public class ex4_7 extends Applet{
private Image iImg;
private int xPos,yPos;
public void init(){
xPos = yPos =(1);
iImg = getImage((2)"ex4_7.jpg");
}
public void paint(Graphics g){
g.drawImage(iImg,xPos,yPos,(3));
}
public boolean(4)(Event e,int x,int y){
xPos = x;
yPos = y;
(5);
return true;
}
}
ex4_7.html
<HTML>
<HEAD>
<TITLE>ex4_7</TITLE>
</HEAD>
<BODY>
<applet code="ex4_7.class" width=800 height=400 >
</applet>
</BODY>
</HTML>
希望與其他軟考考生進行交流?點擊進入軟考論壇>>>
更多信息請訪問:考試吧軟件水平考試欄目
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |