c語言程序設(shè)計考試題目_第1頁
c語言程序設(shè)計考試題目_第2頁
c語言程序設(shè)計考試題目_第3頁
c語言程序設(shè)計考試題目_第4頁
c語言程序設(shè)計考試題目_第5頁
已閱讀5頁,還剩49頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

2011級電子信息、光信息專業(yè)及物理學(xué)專業(yè)

《高級語言程序設(shè)計》課程設(shè)計大綱

一、課程設(shè)計目的

《高級語言程序設(shè)計》課程設(shè)計是電子信息、光信

息專業(yè)以及物理學(xué)專業(yè)集中實踐性環(huán)節(jié)之一,是學(xué)習(xí)

完《高級語言程序設(shè)計》課程后進行的一次全面的綜

合練習(xí),其目的在于加深對程序設(shè)計基本知識的理解,

掌握使用C語言進行模塊化軟件設(shè)計的基本方法,提

高通過編寫程序解決實際問題的能力,為今后從事設(shè)

計工作和后續(xù)各種編程課程的學(xué)習(xí)打好基礎(chǔ)。

二、課程設(shè)計內(nèi)容及要求

用C語言制作一個小型軟件系統(tǒng)。所設(shè)計的系統(tǒng)雖

屬“小型”,但應(yīng)包括有完整軟件中常見的技術(shù)要素

和功能,如軟件封面、用戶登錄、主菜單、功能化模

塊、操作幫助等。每位學(xué)生在附錄中的課程設(shè)計題中

可自選一題,要求學(xué)生根據(jù)題目的基本要求,編寫程

序,并寫好課程設(shè)計說明書。學(xué)生也可自擬課程設(shè)計

題。

每一道課程設(shè)計題選題人數(shù)不得超過2人,如兩人

選擇同一題,在此題的課程設(shè)計中不得雷同,否則視

為課程設(shè)計無效。自擬題人數(shù)不限。

課程設(shè)計題參見附錄。

三、課程設(shè)計時間

課程設(shè)計時間設(shè)定為2-3周,在學(xué)習(xí)完《高級語

言程序設(shè)計》課程后進行。最后2-3次課為課程設(shè)計

演示答辯時間。

四、課程設(shè)計說明書編寫規(guī)范

課程設(shè)計說明書是是項目設(shè)計的理論依據(jù),是整

個設(shè)計工作的整理和總結(jié),同時也是審核設(shè)計能否滿

足使用要求的技術(shù)文件之一。此外,從軟件工程的觀

點來看,軟件文檔是軟件的重要組成部分。所以,學(xué)

習(xí)寫好課程設(shè)計說明書也是完成課程設(shè)計的重要內(nèi)

容。

課程設(shè)計說明書的內(nèi)容:

①封面(見附錄)

②目錄(標(biāo)題,頁次)

③設(shè)計任務(wù)(參見附錄)

④正文,一般有如下幾個方面的內(nèi)容:

?需求分析

?系統(tǒng)模塊圖

?模塊說明

?用戶使用說明

?測試結(jié)果

⑤設(shè)計小結(jié)

⑥參考文獻(不少于三則)

書寫格式:

[1]譚浩強.c程序設(shè)計(第二版).北京:

清華大學(xué)出版社,1999

⑦附錄(源程序)

課程設(shè)計說明書的編寫要做到內(nèi)容完整、條理清

楚、算法清晰、文字通順,字體工整,源程序的書寫

格式應(yīng)符合規(guī)范。

課程設(shè)計說明書必須用鋼筆、簽字筆書寫或用打

印機打印。紙張規(guī)格為16開,標(biāo)明頁次,裝訂成冊。

課程設(shè)計說明書應(yīng)在答辯演示之前上交給指導(dǎo)教

師。

五、課程設(shè)計的考查

由指導(dǎo)教師根據(jù)學(xué)生完成任務(wù)的情況、課程設(shè)計

說明書的質(zhì)量和課程設(shè)計過程中的工作態(tài)度、答辯演

示情況等綜合打分。成績評定實行優(yōu)秀、良好、中等、

及格和不及格五個等級。不及格者不能得到相應(yīng)的學(xué)

分,需重新做課程設(shè)計,經(jīng)指導(dǎo)教師考核及格后,方

可取得相應(yīng)學(xué)分。

附圖:課程設(shè)計說明書封面格式

三峽大學(xué)理學(xué)院XXXX級

XXXXXXXXXXXX專業(yè)

《高級語言程序設(shè)計》

課程設(shè)計

說明書

設(shè)計題目:

班級:

學(xué)號:

姓名:

完成日期:

附錄:

課程設(shè)計題

第一題:為中小學(xué)生編寫一個與中小學(xué)生智力活動有

關(guān)的小型程序,可進行以下程序處理:

①求一元二次方程任意根

②簡單屏幕游戲

③小學(xué)算術(shù)測驗系統(tǒng)(含隨機出題、自動評分、查

看正確答案、錯題重做功能)

④簡單通信錄(要求使用結(jié)構(gòu)體和磁盤文件讀寫)

【說明】整個程序應(yīng)有軟件封面、說明和幫助文檔功

能,并加入用戶登錄(密碼驗證)功能程序。封面

上應(yīng)標(biāo)明軟件名稱、版本號、編程者姓名、班級、

完成日期和功能菜單。所有要求用戶輸入處都應(yīng)有

適當(dāng)?shù)娜藱C對話。整個程序設(shè)計應(yīng)按模塊化設(shè)計的

要求,分模塊設(shè)計和調(diào)試,再完成整個系統(tǒng)的調(diào)試。

每一模塊運行結(jié)束都應(yīng)回到主菜單,正常情況下只

能從主菜單中退出,且正常退出后應(yīng)有適當(dāng)?shù)母鎰e

辭。

參考不例:

1、軟件封面(參考)

xl*vL**JL**Jx*J>xtz*JL*xtzvt**JL**JL*XL*XL**JL**JL*xt**X**JL**JL**X**JL**JL*xjxxl**Jx*Jxxl**JL*

*T**T?*T**T**T**T*XT**T*Xp*XJX?p*ZjXXjXXf*ZJ*XjXXjXZT**T>XJS*T?*T>XJX*T?XJ**T**T?*T**T**T?#T%XjX

***

*《高級語言程序設(shè)計》課程設(shè)

計一*

*中小學(xué)生電子助手

*

sL*xL**JL*sL*xl**JL**JL*xl**JL**JL*xjx*JL*xlxxjxxlxxlxxl*xfxxt*xl**JL*xt*xtx*JL**JL**JL**JL*xt*sL*xL**JL*sL*xl**JL*

#T?*T*<J?xj**y**r*xjxXTSxf*xTxxf*xr*xr**T*xr?

***

程序設(shè)計:XX系XX專業(yè)XXX

XXXX年XX月XX日

2、登錄成功后主菜單(參考)

選擇菜單

a、一元二次方程求根

b、五子棋游戲

c、小學(xué)四則運算測驗

d、通信錄

e>退出

請選擇(a、b、c、d或e):

第二題:工資管理系統(tǒng)設(shè)計

1、需求分析:工資信息存放在文件中,提供文件

的輸入、輸出等操作;要實現(xiàn)瀏覽功能,提供顯示、

排序操作;而查詢功能要求實現(xiàn)查找操作;另外還應(yīng)

該提供鍵盤式選擇菜單以實現(xiàn)功能選擇。

2、總體設(shè)計:整個系統(tǒng)可以分為信息輸入、信息

添加、信息瀏覽、信息排序、信息查詢和信息統(tǒng)計模

塊。

3、詳細(xì)設(shè)計

工資信息采用結(jié)構(gòu)體數(shù)組:

StructSalary_Info

{intCardNo;〃工資卡號

Charname[20];〃姓名

intmonth;〃月份

floatInit_Salary;〃應(yīng)發(fā)工資

floatWater_Rate;〃水費

floatElectricRate;〃電費

floatFinalSalary;〃實發(fā)工資

}SI[MAX];//SI[MAX]中每個數(shù)組元

素對應(yīng)一個職工工資信息

(1)主函數(shù)提供輸入、處理和輸出部分的函數(shù)調(diào)

用,各功能模塊采用菜單方式選擇。

(2)輸入模塊按照工資卡號、姓名、月份、應(yīng)發(fā)

工資、水費、電費的順序輸入信息。

(3)添加模塊增加新的職工工資信息,從鍵盤

輸入并逐條寫到原來的輸入文件中,采用追加而不是

覆蓋的方式。

(4)瀏覽模塊通過菜單選擇按照工資卡號還是姓

名瀏覽。如果按照卡號瀏覽,則顯示的記錄按照卡

號升序輸出;按照姓名瀏覽則按照字典序輸出(調(diào)用

排序模塊的排序功能)。

(5)排序模塊排序模塊提供菜單選擇,實現(xiàn)按照

工資卡號升序、實發(fā)工資降序以及姓名字典序排序。

排序方法可以選擇冒泡排序、插入排序、選擇排序等。

(6)查詢模塊實現(xiàn)按照工資卡號和姓名的查詢,

采用基本的查找方法即可。

第三題:學(xué)生學(xué)籍信息管理系統(tǒng)設(shè)計

1、需求分析:學(xué)生基本信息、學(xué)生成績基本信息

要存入文件當(dāng)中,因而要提供文件的輸入輸出操作;

查詢功能要求提供查找和顯示操作;刪除功能要求實

現(xiàn)刪除操作;排序功能要求實現(xiàn)排序操作;另外還

應(yīng)該提供鍵盤式選擇菜單以實現(xiàn)功能選擇。

2、總體設(shè)計:整個系統(tǒng)可以設(shè)計為數(shù)據(jù)錄入模塊、

數(shù)據(jù)查詢模塊、數(shù)據(jù)刪除模塊和數(shù)據(jù)排序模塊。

3、詳細(xì)設(shè)計參考第二題

第四題:通訊錄管理系統(tǒng)設(shè)計

1、需求分析:信息記錄要存放到文件中去,因而

要實現(xiàn)文件的輸入輸出操作;要實現(xiàn)數(shù)據(jù)的插入、刪

除、修改和顯示功能,因而要實現(xiàn)插入、刪除、修改

和顯示操作;要實現(xiàn)按人名或電話號碼進行查詢的功

能,因而要提供查找操作;另外還應(yīng)該提供鍵盤式選

擇菜單以實現(xiàn)功能選擇。

2、總體設(shè)計:整個系統(tǒng)可以設(shè)計為數(shù)據(jù)插入模塊、

數(shù)據(jù)修改模塊、數(shù)據(jù)刪除模塊、數(shù)據(jù)顯示模塊和數(shù)據(jù)

查詢模塊。

3、詳細(xì)設(shè)計:

第一個模塊---主函數(shù)main。的功能是:根據(jù)選單

的選項調(diào)用各函數(shù),并完成相應(yīng)的功能。

第二個模塊——Menu()的功能是:顯示英文提示

選單。

第三個模塊——Quit。的功能是:退出選單。「

第四個模塊——Create。的功能是:創(chuàng)建新的通訊

錄。

第五個模塊——Add()的功能是:在通訊錄的末尾,

寫入新的信息,并返回選單。

第六個模塊——Find。的功能是:查詢某人的信

息,如果找到了,則顯示該人的信息,如果未找到,

則提示通訊錄中沒有此人的信息,并返回選單。

第七個模塊——Alter。的功能是:修改某人的信

息,如果未找到要修改的人,則提示通訊錄中沒有

此人的信息,并返回選單。

第八個模塊——Delete。的功能是:刪除某人的信

息,如果未找到要刪除的人,則提示通訊錄中沒有

此人的信息,并返回選單。

第九個模塊——List。的功能是:顯示通訊錄中的

所有記錄。

第五題:飛機訂票管理系統(tǒng)設(shè)計

1、需求分析:航班信息用文件保存,因而要提供

文件的輸入輸出操作;航班信息瀏覽功能需要提供顯

示操作;要查詢航線需要提供查找功能;另外要提供

鍵盤式選擇菜單以實現(xiàn)功能選擇。

2、總體設(shè)計:該系統(tǒng)設(shè)計為航班信息輸入模塊、

航班信息瀏覽模塊和航線查詢模塊。

3、詳細(xì)設(shè)計

數(shù)據(jù)結(jié)構(gòu)采用結(jié)構(gòu)體數(shù)組,設(shè)計航班結(jié)構(gòu)體如下:

Struct

{CharflightNo[10];//航班號

Charstart[10];//起始站

Charend[10];〃終點站

Floatday;〃飛行時間

InttotalTicket;//預(yù)售票總數(shù)

IntsellTicket;〃已售票總數(shù)

}Flight[N];〃航班結(jié)構(gòu)體

(1)航班信息輸入模塊把航班信息寫入航班信息

文件。

(2)航班信息瀏覽模塊讀文件然后顯示即可。

(3)航線查詢模塊通過菜單選擇查詢方式,提供

按照航班號、起點站、終點站和飛行時間查詢。采用

基本查找算法即可。

第六題:職工信息管理系統(tǒng)設(shè)計

1、需求分析,:系統(tǒng)要以菜單方式工作,因而要

提供鍵盤式選擇菜單以實現(xiàn)功能選擇;職工信息采用

文件保存,因而要提供文件的輸入輸出操作;要實現(xiàn)

職工信息的瀏覽功能,則要提供信息顯示操作;要實

現(xiàn)職工信息查詢功能,則要提供查找操作(按學(xué)歷查

詢和按職工號查詢兩種查詢方式);要實現(xiàn)職工信息

刪除、修改功能則要提供文件記錄的刪除、修改操作。

2、總體設(shè)計:整個系統(tǒng)被設(shè)計為職工信息輸入模

塊、職工信息瀏覽模塊、職工信息查詢模塊和職工信

息刪除與修改模塊。

3、詳細(xì)設(shè)計

數(shù)據(jù)結(jié)構(gòu)采用結(jié)構(gòu)體,設(shè)計職工信息結(jié)構(gòu)體:

Structemployeeinfo

{CharjobNo[10];//職工號

Charname[20];〃姓名

Charsex;〃性別

Intage;〃年齡

ChareduLevel[10];〃學(xué)歷

Floatsalary;〃工資

Charaddr;〃地址

Chartel[11];〃電話

}EmpInfo;〃職工信息結(jié)構(gòu)體

(1)職工信息輸入模塊把職工信息寫入文件。

(2)職工信息瀏覽模塊讀文件然后顯示即可。

(3)職工信息查詢模塊通過菜單選擇查詢方式,

提供按學(xué)歷查詢和按職工號查詢兩種查詢方式。采用

基本查找算法即可。

(4)職工信息刪除與修改模塊通過菜單選擇刪除

操作,由于C語言沒有提供直接刪除文件記錄的函

數(shù),因而需要自己實現(xiàn):讀記錄,判斷是否要刪除(與

輸入的要刪除的記錄比較),如果要刪除,則舍棄;否

則重新寫入文件。修改操作于刪除操作類似,只是判

斷是否是要修改的記錄,如果是,則把修改后的記錄

寫入文件,否則直接寫入文件。

第七題:圖書管理系統(tǒng)設(shè)計

1、需求分析:圖書管理信息采用文件保存,因而

要提供文件的輸入輸出操作;要實現(xiàn)對圖書基本信息

的查詢,則要提供查找操作(提供按書名、作者名查

詢兩種查詢方式)和顯示操作;要實現(xiàn)對撤銷圖書信

息的刪除則要提供文件記錄的刪除操作;辦理借書或

還書手續(xù)需要提供修改操作;另外還要提供鍵盤式選

擇菜單以實現(xiàn)功能選擇。

2、總體設(shè)計:整個系統(tǒng)被設(shè)計為數(shù)據(jù)輸入模塊、

數(shù)據(jù)查詢模塊、數(shù)據(jù)刪除模塊和數(shù)據(jù)修改模塊。

3、詳細(xì)設(shè)計

數(shù)據(jù)結(jié)構(gòu)采用結(jié)構(gòu)體,設(shè)計圖書信息結(jié)構(gòu)體:

StructbookManagelnfo

{CharbookName[20];〃圖書名稱

CharbookCode[20];〃圖書編號

Floatprice;〃圖書價格

Charauthor[10];//作者

Intstate;〃存在狀態(tài),0代表可以

出借,1代表已經(jīng)借出

CharborrowerName[10];〃借書人姓

Intsex;〃借書人性別,0代表女,

1代表男

CharstuNo[10];//借書人學(xué)號

}bookMInfo;

(1)數(shù)據(jù)輸入模塊把圖書基本信息寫入圖書信息

文件。

(2)數(shù)據(jù)查詢模塊通過菜單選擇查詢方式,提

供按書名查詢和按作者名查詢兩種查詢方式。采用基

本查找算法即可。

(3)數(shù)據(jù)刪除模塊通過菜單選擇刪除操作,由于

C語言沒有提供直接刪除文件記錄的函數(shù),因而需要

自己實現(xiàn):讀記錄,判斷是否要刪除(與輸入的要刪

除的記錄比較),如果要刪除,則舍棄;否4則重

新寫入文件。

(4)數(shù)據(jù)修改模塊辦理借書手續(xù)時,先要在文件

中查找要借的書的存在狀態(tài),若可以出借,則允許借

出,把借書人姓名、性別和學(xué)號添加到該書的記錄中,

并把存在狀態(tài)改為已經(jīng)借出;否則,顯示“抱歉,該

書已借出”。辦理還書手續(xù)時,在文件中查找該書的

記錄,然后把存在狀態(tài)改為允許出借,把借書人姓名、

性別和學(xué)號刪除。具體修改操作可以參考刪除操作。

第八題:實驗設(shè)備管理系統(tǒng)設(shè)計

1、需求分析:實驗室設(shè)備信息用文件存儲,故要

提供文件的輸入輸出操作;要能夠完成設(shè)備的錄入和

修改,需要提供設(shè)備添加和修改操作;實現(xiàn)對設(shè)備進

行分類統(tǒng)計,需要提供排序操作;實現(xiàn)對設(shè)備的查詢

需要提供查找操作;另外還要提供鍵盤式選擇菜單以

實現(xiàn)功能選擇。

2、總體設(shè)計:整個系統(tǒng)被設(shè)計為實驗設(shè)備信息輸

入模塊、實驗設(shè)備信息添加模塊、實驗設(shè)備信息修

改模塊、實驗設(shè)備分類統(tǒng)計模塊和實驗設(shè)備查詢模

塊。

3、詳細(xì)設(shè)計

數(shù)據(jù)結(jié)構(gòu)采用結(jié)構(gòu)體,設(shè)計實驗設(shè)備信息結(jié)構(gòu)體:

StructequipmentInfo

{CharequipCode[10];〃設(shè)備編號

CharequipType[20];〃設(shè)備總類

CharequipName[20];〃設(shè)備名稱

floatequipPrice;〃設(shè)備價格

charbuyDate[20];〃設(shè)備購入日期

intscrap;〃是否報廢,0表示沒有

報廢,1表示報廢

charscrapDate[20];〃報廢日期

}EquInfo;

(1)實驗設(shè)備信息輸入模塊把實驗設(shè)備基本信息

寫入實驗設(shè)備信息文件。

(2)實驗設(shè)備信息添加模塊添加設(shè)備時,把添加

的設(shè)備基本信息采用追加的方式寫入設(shè)備信息文件。

(3)實驗設(shè)備信息修改模塊修改設(shè)備信息,則需

要讀文件,判斷信息是否是要修改的設(shè)備的信息,如

果是,修改,重新寫入文件;否則直接重新寫入文件。

(4)實驗設(shè)備分類統(tǒng)計模塊根據(jù)給定的分類標(biāo)準(zhǔn)

(設(shè)備種類、設(shè)備名、設(shè)備購入日期)對文件的記錄

進行排序,排序方法可以選擇冒泡、插入、選擇等方

法。然后采用查找算法查找同類設(shè)備,采用基本的數(shù)

學(xué)運算即可統(tǒng)計同類設(shè)備的相關(guān)信息,比如數(shù)量、價

錢等。

(5)實驗設(shè)備查詢模塊通過菜單選擇查詢方式,

提供按設(shè)備編號、設(shè)備種類、設(shè)備名稱、設(shè)備購入日

期和設(shè)備狀態(tài)為正常(scrap字段值為0)這些查詢

方式查詢。采用基本查找算法即可。

第九題:儀器儀表管理系統(tǒng)設(shè)計

1、需求分析:儀器儀表信息用文件存儲,故要提

供文件的輸入輸出操作;要能夠完成對儀器儀表信息

的修改和刪除,需要對提供儀器儀表信息修改和刪除

操作;實現(xiàn)對儀器儀表信息的查詢和統(tǒng)計及顯示操

作;另外還要提供鍵盤式選擇菜單以實現(xiàn)功能選擇。

2、總體設(shè)計:整個儀器儀表管理系統(tǒng)分為儀器表

信息輸入模塊、儀器表信息修改和刪除模塊、儀器表

信息查詢和統(tǒng)計模塊。

3、詳細(xì)設(shè)計

數(shù)據(jù)結(jié)構(gòu)采用結(jié)構(gòu)體:

Structinstrumentinfo

{CharinstrName[20];〃儀器儀表名

CharinstrNo[10];〃儀器儀表編號

CharbuyDate[20];〃購買時間

CharborrowDate[20];〃借入時間

CharlendDate[20];//借出時間

CharreturnDate[20];〃歸還時間

CharrepairDate[20];//維修時間

Intstate;〃狀態(tài)信息(0代表可借出,

1代表已借出,2代表正在維修)

}Instrinfo;

(1)輸入模塊把儀器儀表信息寫入儀器儀表信息

文件。

(2)修改和刪除模塊通過菜單選擇借出操作,查

找文件儀器儀表信息,找到相應(yīng)的儀器儀表,如果儀

器儀表狀態(tài)為0,則允許借出,在文件中更改儀器儀

表狀態(tài)為1,更改借出時間;否則,即儀器儀表借出

或正在維修,則輸出“抱歉,儀器儀表已借出(正在

維修)”這個過程是一個對文件!查找(讀文件、

判斷是否是要查找的紀(jì)錄)、重新寫入的過程。刪

除操作只需讀文件,判斷所讀紀(jì)錄是不是要刪除的記

錄,如果是,則舍棄;否則重新寫入文件。

(3)查詢和統(tǒng)計模塊通過菜單選擇查詢或統(tǒng)計操

作,若選擇查詢,則需要再選擇查詢方式:基本信息、

時間段、時間點?;拘畔⒉樵儯惋@示所有記錄,

這是一個讀文件和輸出的過程。時間段查詢,則要輸

入起止時間和表征字段(可以用0表示購買起止時

間,1表示借出起止時間,2表示維修起止時間)。

例如輸入200411200410100表示查詢2004年

1月1日到2004年10月10日之間購買的儀器

儀表信息。則讀一條記錄,判斷購買時間是否處于起

止時間之間,如果處于,則打印輸出,否則舍棄。借

出和維修查詢與此類似。

統(tǒng)計功能和查詢功能類似,只需要加一個計數(shù)變

量即可。

第十題:服裝銷售管理系統(tǒng)設(shè)計

1、需求分析:用戶與商品信息要采用文件存儲,

因而要提供文件的輸入輸出操作;實現(xiàn)用戶的添加、

修改、刪除,商品信息的添加、修改、刪除、查找等

需要提供信息的添加、刪除、修改與查6找操作;實

現(xiàn)商品瀏覽功能的實現(xiàn)需要實現(xiàn)顯示操作;另外還要

提供鍵盤式選擇菜單以實現(xiàn)功能選擇。

2、總體設(shè)計:整個服裝銷售系統(tǒng)被設(shè)計為管理員

模塊、店長模塊、銷售員模塊、商品模塊等,如下圖

所示:另外還要實現(xiàn)各用戶自身信息的管理。

3、詳細(xì)設(shè)計

數(shù)據(jù)結(jié)構(gòu)采用結(jié)構(gòu)體,構(gòu)造結(jié)構(gòu)體如下:

Structgcxxis〃徜iiA

{

Charname[10]:佩Ah名

Giarc(xte|10];〃商曷代碼

Charproducer(10);〃制造.

Fk)atprice;〃價格

}Goods;

Stniaadministmtor〃濘理員

(

CharID|IO|;

Char()as<iw(>rd[10];

…〃其他信息

}Admin;

Stnictsliopkccpcr〃百K

[

CharID|IOJ;

Giarpassword)10).

...〃其他信息

}Shkpr,

Structseller//tfilh員

OiarlDUO];//營業(yè)ID號

Cliarnaine[IO];〃姓名

Giar1DU0J;〃所屬店KID號

Gixxls,"good;怫向該銷售員俏售的商品信息

〃其他信息

}Seller;

Structg<Mxis_re|x>rt〃說晶報表

i

1

Gixxisgood;〃商品

Sellerassistant."營業(yè)員

CharsclLdata|20|;//;llMHVI

先建立文本文件Admin.txt,其中存放管理員的

ID和密碼及其它信息;文本文件Shopkeeper,txt,

其中存放店主的用戶名和密碼及其它信息;文本文件

Seller,txt,其中存放銷售員的ID和密碼及其他信

登錄系統(tǒng)時,通過菜單選擇登錄身份,然后提示

輸入用戶ID和密碼。

如果以管理員身份登錄,則在Admin,txt文件

中查找(采用基本的查找算法)輸入的用戶ID和密

碼是否存在,如果存在,則允許進入,顯示選擇菜單:

修改密碼添加用戶用戶信息商品信息;否則,顯

示“輸入的用戶名或密碼錯誤!,返回上級菜單。”

店長與銷售員登錄系統(tǒng)與此類似,店長登錄成

功后顯示選擇菜單為:修改密碼修改個人信息商

品信息查看報表商品儲備信息。銷售員登錄成功后

顯示選擇菜單為:商品瀏覽查找商品出售商品本

日報表本月報表

密碼修改與個人信息修改既是寫入新的密碼、個

人信息,覆蓋掉原來的,就是文件的讀寫操作。在登

錄成功后,就標(biāo)志出登錄人員的紀(jì)錄位置,這樣修改

信息時,可以直接定位到修改記錄的位置。

管理員添加用戶,就是執(zhí)行文件寫操作,采用

追加的方式把用戶信息寫入用戶信息文件(根據(jù)添加

的用戶身份選擇寫入Shopkeeper,txt還是

Seller.txt)。刪除用戶操作,讀取用戶信息文件,

如果讀出的用戶不是要刪除的用戶,則直接重新寫入

文件,否則,舍棄。

管理員選擇用戶信息,將進入用戶信息修改和

用戶信息統(tǒng)計的選擇。用戶信息修改操作,即查找

要修改的用戶信息文件,找到要修改的用戶,寫入修

改后的信息覆蓋掉原始信息。用戶信息統(tǒng)計操作,讀

用戶信息文件,比較統(tǒng)計信息字段,符合統(tǒng)計要求則

計數(shù)加1,最后輸出符合條件的記錄數(shù)(也可以把符

合條件的記錄信息完全輸出)。

管理員選擇商品信息,則可以選擇商品信息添

加、修改、刪除、查找、統(tǒng)計,商品信息的添加、修

改、刪除、統(tǒng)計操作與用戶信息的相應(yīng)操作類似。查

找操作只需采用基本的查找算法查找商品信息文件

即可。

店長修改密碼和修改個人信息操作與管理員相

應(yīng)操作類似。

店長的商品信息可以選擇商品信息修改和商品

信息統(tǒng)計,此類操作與管理員的相應(yīng)操作相同。

店長選擇查看報表,則顯示選擇菜單:日報表

月報表商品銷售量報表營業(yè)員業(yè)績報表。查看日報

表,根據(jù)輸入的日期在商品報表文件中查找,把出售

日期與輸入日期符合的記錄輸出。查看月報表操作

類似,查找商品報表文件中商品出售日期在輸入月份

之間的記錄輸出。商品銷售量報表,這是一個統(tǒng)計的

過程,查找商品報表,統(tǒng)計同一商品的銷售量(月銷

售量、年銷售量)。查看營業(yè)員業(yè)績報表,則讀銷售

員信息文件,把信息打印輸出即可。

店長查找瀏覽修改商品儲備信息,查找與修改

操作可以參考管理員對商品的查找與修改操作,瀏覽

操作就是把商品儲備信息輸出。這些操作在該店長對

應(yīng)的商品儲備信息文件中執(zhí)行。

[注:每個店長對應(yīng)一個商品儲備信息文件,里

面存放該店儲備的商品信息。

文件格式:店長ID商品名商品代號制造商

價格…]

銷售員可以選擇商品瀏覽、查找、出售商品、察

看自己本日報表、本月報表。商品瀏覽、查找以及查

看自己本日報表、本月報表可以參考前面相關(guān)操作。

出售商品操作執(zhí)行的動作是:在本店的商品儲備文件

中查找要出售的商品,如果存在,則出售,在商品報

表文件和銷售員銷售文件中添加該商品信息,并把該

商品信息從商品儲備文件中刪除。

第十一題:雜志訂閱管理系統(tǒng)設(shè)計

1、需求分析:訂戶的信息要用文件存儲,所以要

提供文件的輸入輸出操作;要實現(xiàn)增加新訂戶的功

能,所以要提供文件的添加操作;要實現(xiàn)對訂戶文件

的查詢,所以要提供文件的查找操作;要刪除已到期

的訂戶記錄,所以要提供文件的刪除操作;要統(tǒng)計

本期雜志訂戶數(shù)并打印運算結(jié)果,所以要提供統(tǒng)計和

顯示操作;另外還要提供鍵盤式選擇菜單以實現(xiàn)功能

選擇。

2、總體設(shè)計:該管理軟件被設(shè)計為數(shù)據(jù)添加模塊、

數(shù)據(jù)刪除模塊和數(shù)據(jù)統(tǒng)計模塊。

3、詳細(xì)設(shè)計

數(shù)據(jù)結(jié)構(gòu)選擇結(jié)構(gòu)體:

Structsubscriberinfo

{Charname[20];〃姓名

Intsex;〃性別

Charaddr[20];〃地址

Chartel[12];〃電話號碼

Floatprice;〃雜志單價

Intnum;〃訂閱數(shù)

Chardate[10];〃訂閱的期限

}subInfo;〃訂戶信息結(jié)構(gòu)體

(1)數(shù)據(jù)添加模塊用追加的方式采用fwrite或

fprintf把新增訂戶信息寫入訂戶信息文件。

(2)數(shù)據(jù)刪除模塊采用基本的查找算法,查找訂

戶信息文件,比較當(dāng)天日期和訂閱期限,如果到期,

則刪除該訂戶記錄。刪除方法:如果判斷該條訂戶信

息要刪除,則不再把該條信息寫入文件,繼續(xù)讀下一

條訂戶信息。

(3)數(shù)據(jù)統(tǒng)計模塊對本期雜志訂戶數(shù)的統(tǒng)計,就

是讀文件,輸出訂戶名、訂閱數(shù)、單價,并計算金額

(單價*訂閱數(shù))??梢远x變量統(tǒng)計訂戶數(shù)、訂閱數(shù)

和總金額,最后輸出。

第十二題:人事管理系統(tǒng)設(shè)計

1、需求分析:人事檔案信息采用文件存儲,因而

要提供文件的輸入輸出操作;根據(jù)學(xué)院人事的變動情

況,添加刪除記錄,因而要提供文件的添加刪除操作;

根據(jù)編號和姓名進項查詢,所以要提供文件的查找操

作;高級編輯功能,就是提供文件的修改操作;統(tǒng)計

功能要提供統(tǒng)計操作;排序功能要提供用排序算法對

文件記錄的排序;另外還要提供鍵盤式選擇菜單以實

現(xiàn)功能選擇。

2、總體設(shè)計:整體設(shè)計為數(shù)據(jù)輸入模塊、數(shù)據(jù)添

加模塊、數(shù)據(jù)刪除模塊、數(shù)據(jù)查詢模塊、數(shù)據(jù)修改模

塊、數(shù)據(jù)統(tǒng)計模塊、數(shù)據(jù)排序模塊。

3、詳細(xì)設(shè)計

數(shù)據(jù)結(jié)構(gòu)采用結(jié)構(gòu)體:

StructpersonnelArchiveInfo

{CharNo[10];//編號

Charname[10];〃姓名

Intsex;〃性別

Intage;//年齡

Charjob[10];〃職務(wù)

Charpost[10];〃職稱

Charpolitic[10];〃政治面貌

Charedulevel[10];//最高學(xué)歷

Charperiod[10];//任職時間

Charstarttime[10];//來院時間

Chartype[10];〃人員類別

}PAInfo;

(1)數(shù)據(jù)輸入模塊把員工信息寫入人事檔案文

件。

(2)數(shù)據(jù)添加模塊用追加的方式把新增員工信息

寫入人事檔案文件。

(3)數(shù)據(jù)刪除模塊根據(jù)人員編號查找要刪除的人

員,從文件中讀一條記錄,查看編號是否要刪除,如

果是,則舍棄,不再寫入文件;否則重新寫入文件。

(4)數(shù)據(jù)查詢模塊把編號和姓名作為查詢字段,

用基本查找算法查找人事檔案文件,把符合查找要求

的記錄輸出。

(5)數(shù)據(jù)修改模塊查找要修改的記錄,修改之。

先讀記錄,若是要修改的記錄,則修改信息,把修改

后的信息寫入文件;否則直接寫入文件。

(6)數(shù)據(jù)排序模塊通過菜單選擇年齡或者來院時

間,把數(shù)據(jù)從文件中讀出來,任意選擇一種排序算

法對記錄進行排序,輸出排序結(jié)果。

(7)數(shù)據(jù)統(tǒng)計模塊通過菜單選擇統(tǒng)計字段:在職

人數(shù)、黨員人數(shù)、女工人數(shù)、高學(xué)歷人數(shù)、高職稱人

數(shù)。

例如選擇黨員人數(shù),則統(tǒng)計運算偽碼如下:

Count=0;〃記錄在職人數(shù)

While(文件未讀完)

{

讀一條記錄;

If(政治面貌是黨員)

{Count++;

輸出該條記錄;

}

其他字段的統(tǒng)計運算與次類似。

第十三題:機房機位預(yù)約模擬管理系統(tǒng)設(shè)計

1、數(shù)據(jù)結(jié)構(gòu)

顧客信息結(jié)構(gòu)體:

StructCuslnfo

{Charname[20];〃顧客姓名

Intsex;〃性別

Chartel[11];//電話

}CInfo;

機位信息結(jié)構(gòu)體:

Struct

{IntState[6];〃機位狀態(tài),每2個小時

為一個時間段,08:00-20:00共6個時間段。

0表示有空機位,1表示沒有空機位

CInfowaitlist[6];〃各個時間段的運行

客戶

Intyear;Intmonth;Intday;〃日期

}PCInfo;

PCInfoinfo[100];〃存放100天的機位信息

2、具體實現(xiàn)

(1)查詢輸入時間,則遍歷info數(shù)組,查看日

期(year/month/day),如果日期匹配,則把機位信

息輸出。

(2)機位預(yù)訂輸入日期(或時間段)查詢機位信

息文件,如果日期符合,再查看狀態(tài)字段,若相應(yīng)字

段為0,則預(yù)約(即把該用戶信息加入寫入機位

waitlist相應(yīng)時間段中);若相應(yīng)字段為1,則查

看本天其他時間段,尋找最近空時間段。如果用戶要

求在非空時間上機,則查找info數(shù)組中該時間段為

空的元素,把該時間段的狀態(tài)字段設(shè)為L把用戶信

息加入機位當(dāng)天waitlist相應(yīng)時間段中。

(3)退出預(yù)訂根據(jù)預(yù)訂日期和客戶信息找到預(yù)訂

信息,把客戶信息刪除,并把該時間段的狀態(tài)置為Oo

(4)查詢輸入日期和時間段,查看該時間段的狀

態(tài),如為L則把相應(yīng)時間段的運行客戶信息打印輸

出。如為0,則顯示“該時間段空閑!。”

第十四題:停車場管理系統(tǒng)設(shè)計

1、需求分析:車輛信息要用文件存儲,因而要提

供文件的輸入輸出操作;當(dāng)車離開時,要刪除文件中

該車的信息,因而要提供文件的刪除操作;另外還

要提供現(xiàn)實操作和用鍵盤式菜單實現(xiàn)功能選擇。

2、總體設(shè)計:整個管理系統(tǒng)可以設(shè)計為停車模塊、

取車模塊、車輛信息瀏覽模塊。

3、詳細(xì)設(shè)計

停車場用二位數(shù)組實現(xiàn)park[2][6]://2層,每

層有6個車位

每輛車的信息用結(jié)構(gòu)體來實現(xiàn),設(shè)立車信息結(jié)構(gòu)

體:

Structcarinfo

{IntcarNo;〃車牌號

IntlayerNo;〃層號

IntparkNo;//車位號

Inttime;//停車時間

}CInfo;

(1)停車模塊對車輛信息賦值,分配前檢查車位

使用情況(按行查找park數(shù)組,元素為0表示車位

為空,則允許分配)。把新添加的車輛信息以追加的

方式寫入汽車信息文件,并更改汽車信息文件中其他

汽車信息的停車時間(停車時間加5)o

(2)取車模塊計算費用(停車費用二停車時間*0.2

元),從文件中刪除該車信息。并將該車位對應(yīng)的二

位數(shù)組變量設(shè)為0,表示該車位可用。輸出提示信息:

是否輸出停車費用總計?(Y/N)如果選擇Y,則輸

出停車費用,否則回到上級菜單。

(3)車輛信息瀏覽模塊輸出車輛信息文件中的記

錄。

另外,用戶按Esc鍵退出系統(tǒng)。

第十五題:建筑工地信息管理系統(tǒng)設(shè)計

1、需求分析:信息采用文件存儲,因而要提供文

件的輸入輸出操作;要插入數(shù)據(jù),因而要提供數(shù)據(jù)的

添加操作;要實現(xiàn)數(shù)據(jù)的刪除、更新和查詢,因而

要提供文件記錄的刪除、修改和查找操作;另外要

提供鍵盤式選擇菜單以實現(xiàn)功能選擇。

2、總體設(shè)計:整個系統(tǒng)可以被設(shè)計為數(shù)據(jù)輸入模

塊、數(shù)據(jù)添加模塊、數(shù)據(jù)刪除模塊、數(shù)據(jù)更新模塊和數(shù)

據(jù)查詢模塊。

3、詳細(xì)設(shè)計

數(shù)據(jù)結(jié)構(gòu)采用結(jié)構(gòu)體,建立四個結(jié)構(gòu)體:

〃銷售商-配件-建筑工地結(jié)構(gòu)體

StructSellerFitBuild

{Charsellercode[10];〃銷售商號

Charfit_code[10];〃配件號

Charbuild_code[10];〃工地號

Intnum;//銷售數(shù)量

}SFB;//sellercode號銷售商銷售num個

fit_code號配件給build_code工地

〃建筑工地

StructBuildingSite

{Charbuildcode[10];〃工地號

Charbuildname[10];〃工地名

Charcity[10];//城市

}BS;

〃配件

StructFitting

{Charfit_code[10];〃配件號

Charfit_name[10];〃配件名

Charcolor[10];//配件顏色

Floatweight;〃配件重量

Charcity[10];〃配件產(chǎn)地

}Fit;

〃銷售商

StructSeller

{Charsellercode[10];〃銷售商號

Charseller_name[10];〃銷售商名字

Charcity[10];〃銷售商城市

}Seller;

(1)主函數(shù)建立四個文件,輸出提示用戶操作的

信息,選擇操作文件:R[銷售商-配件-建筑工地],B[建

筑工地],F[配件],S[銷售商],空格鍵[查詢]。

(2)數(shù)據(jù)輸入模塊寫數(shù)據(jù)到相應(yīng)文件中。

(3)數(shù)據(jù)插入模塊采用追加的方式寫數(shù)據(jù)到文

件。

(4)數(shù)據(jù)刪除模塊通過菜單選擇相應(yīng)的文件后,

打開該文件,從文件中讀一條記錄,判斷是否要刪除,

如果是,則舍棄;否則重新寫入文件,讀下一條記錄。

(5)數(shù)據(jù)更新模塊與數(shù)據(jù)刪除模塊類似,只是判

斷所讀的紀(jì)錄是否要更新,如果是,則把更新后的紀(jì)

錄寫入文件,否則直接寫入文件。

(6)按空格鍵進入查詢操作通過菜單選擇查詢零

件-供應(yīng)商或者項目-供應(yīng)商。例如選擇查詢零件-供應(yīng)

商。其基本流程如下:

打開銷售商-配件-建筑工地文件;

While(文件未結(jié)束)

{讀一條記錄,得到銷售商號碼和配件號;

在銷售商文件中查找該銷售商號碼,得到該銷

售商所在城市;

在配件文件中查找配件號,得到該配件的產(chǎn)

地;

如果銷售商所在城市與配件的產(chǎn)地相同,則輸

出銷售商號碼和配件號碼;

查詢項目-供應(yīng)商記錄對的操作類似,只需把配件

號改為工地號即可。

第十六題:電影俱樂部管理系統(tǒng)設(shè)計

1、需求分析:DVD信息和俱樂部會員信息用文件

存儲,因而要提供文件的輸入輸出操作;要注冊新會

員,因而要提供文件的添加操作;實現(xiàn)按月繳納費用,

因而要提供文件的修改操作;要瀏覽信息因而要提供

顯示操作;要實現(xiàn)查詢則要提供文件的查找操作;另

外要提供鍵盤式選擇菜單以實現(xiàn)功能選擇。

2、總體設(shè)計:整體設(shè)計為會員注冊模塊、會員交

費模塊、會員租用DVD模塊、會員歸還DVD模塊、信

息瀏覽模塊和信息查詢模塊。

3、詳細(xì)設(shè)計

采用文件管理信息,建立兩個文件:DVD信息文件

和會員信息文件。

數(shù)據(jù)結(jié)構(gòu)采用結(jié)構(gòu)體:

//DVD信息結(jié)構(gòu)體

StructDVDInfo

{CharNo[10];//DVD編號

Charname[10];//DVD名字

Intstate;//DVD狀態(tài):0表示已借出,1

表示可出借

}DI;

〃會員信息結(jié)構(gòu)體

StructMemberinfo

{CharNo[10];〃會員編號

Charname[10];//會員姓名

Charpassword[20];〃會員密碼

Floatbalance;〃賬戶余額

DIborrowDVD[3];〃所借DVD信息;

Intstate;〃表示租用DVD的數(shù)目,取

值為0-3

}MI;

分析:建立DVD文件和會員信息文件,輸出菜

單:新用戶注冊[N]直接登錄[Enter]。如果是新用

戶注冊,則進入用戶注冊模塊。如果直接登錄,則提

示輸入用戶名和密碼。普通會員正確登錄后顯示:租

用DVD[H]歸還DVD[R]繳納費用[P]賬戶信息[D]。

按相應(yīng)的提示鍵將進入相應(yīng)的模塊。管理員登錄則

顯示:DVD信息[D]會員信息[M]交易信息[T]。DVD

信息查看就是分屏輸出DVD文件中的記錄,會員信息

就是分屏輸出會員信息文件中的記錄,交易信息則輸

出租用DVD數(shù)不為0的會員信息。

(1)會員注冊模塊提示輸入用戶信息:會員編

號(昵稱),會員姓名,密碼。將把新的會員信息添

加到會員信息文件中,并把賬戶余額初始化為0,所

借DVD信息初始化為空。然后系統(tǒng)顯示提示信息:

繳納費用?[Y/N]。按Y鍵將進入會員交費模塊,N則

返回系統(tǒng)初始界面。

(2)會員交費模塊提示輸入交費金額,則在會

員信息文件中修改其賬戶余額。

(3)會員租用DVD模塊可以通過菜單選擇瀏覽

DVD信息或者租用。瀏覽DVD信息調(diào)用信息瀏覽模

塊,租用則首先查看自己的余額,如果〉0,則查看狀

態(tài),如果state<3,則允許出借,提示輸入租用的DVD

編號,在會員信息文件中加入該DVD信息,state++o

并在DVD信息文件中把該DVD狀態(tài)改為已借出。

(4)會員歸還DVD模塊提示用戶輸入要歸還的

DVD編號,把該用戶記錄的該DVD信息初始化為空,

state-o同時在DVD信息文件中把其狀態(tài)改為可供

出借。

(5)信息瀏覽模塊瀏覽DVD信息,則從DVD信

息文件中讀記錄,輸出。瀏覽會員信息文件,則讀會

員信息文件,輸出。

(6)信息查詢模塊會員對自己賬戶狀況的查詢,

則輸出其賬戶信息即可(登錄時在會員信息文件中找

到自身信息,事先讀到臨時變量中)。管理員對所有

交易情況的查看,則查找用戶信息文件,如果用戶的

staet!=O,則輸出用戶信息。

第十七題:歌曲信息管理系統(tǒng)設(shè)計

1、需求分析:用文件存儲信息,因而要提供文件

的輸入輸出操作;可對歌曲信息進行輸入、刪除、瀏

覽,因而要提供文件的輸入、刪除和信息顯示操作;

查詢歌曲信息要提供查找操作;實現(xiàn)按作者分組顯示

功能則要提供排序功能;另外要提供鍵盤式選擇菜單

以實現(xiàn)功能選擇。

2、總體設(shè)計:整個管理系統(tǒng)可以被設(shè)計為數(shù)據(jù)輸

入模塊、數(shù)據(jù)刪除模塊、信息瀏覽模塊、信息查詢模

塊和信息分組顯示模塊。

3、詳細(xì)設(shè)計

數(shù)據(jù)結(jié)構(gòu)采用結(jié)構(gòu)體,建立歌曲信息結(jié)構(gòu)體:

StructSonginfo

{Charname[20];〃歌曲名

Charauthor[20];〃作者

Charsinger[20];〃演唱者

Charpub_date[6];〃發(fā)行年月(yyyymm)

}SI;

(1)數(shù)據(jù)輸入模塊把歌曲信息寫入文件。

(2)數(shù)據(jù)刪除模塊采用基本的查找算法,查找歌

曲信息文件,如果是要刪除的歌曲,則舍棄改信息。

否則重新寫入文件。

(3)信息瀏覽模塊讀歌曲信息文件,顯示輸出。

(4)信息查詢模塊通過菜單選擇查詢字段:歌曲

名作者演唱者。然后采用基本查找算法在歌曲信息

文件中查找,如果找到,則輸出;否則輸出“對不起,

沒有您要找的歌曲信息!。”

(5)信息分組顯示模塊選擇按作者分組顯示歌

曲信息,用fread或fscanf把歌曲信息文件中的信

息讀取到臨時變量中(臨時變量數(shù)據(jù)結(jié)構(gòu)可以采用歌

曲信息結(jié)構(gòu)體數(shù)組),采用排序算法(冒泡、插入、

選擇等)把歌曲信息按照作者排序,然后輸出。

第十八題:交通處罰單管理系統(tǒng)設(shè)計

1、需求分析:交通處罰單信息用文件存儲,因而

要提供文件的輸入輸出操作;要求可以輸入、刪除、瀏

覽交通處罰單信息,因而要提供信息的輸入、刪除和

顯示操作;要實現(xiàn)按車輛、駕駛員和開單交警查詢,

則要提供查找操作;另外提供統(tǒng)計操作和鍵盤式選擇

菜單以實現(xiàn)功能選擇。

2、總體設(shè)計整個管理系統(tǒng)被設(shè)計為信息輸入模

塊、信息刪除模塊、信息瀏覽模塊、信息查詢模塊和信

息統(tǒng)計模塊。

3、詳細(xì)設(shè)計

數(shù)據(jù)結(jié)構(gòu)采用結(jié)構(gòu)體,設(shè)計交通處罰單結(jié)構(gòu)體:

StructTranficPunishBill

{CharcarNo[10];〃車牌號

ChardriverNo[20];〃駕照號

CharpoliceNo[10];〃開單交警號碼

CharbillNo[20];〃處罰單號碼

Chartime[12];//處罰時間

(yyyymmddhhmm,年月日時分)

}TPB;

(1)主函數(shù)提示用戶選擇功能:輸入刪除瀏覽

查詢統(tǒng)計

(2)信息輸入模塊16把處罰單信息寫入處罰單

信息文件。

(3)信息刪除模塊輸入處罰單號碼,然后在處罰

單信息文件中查找該條處罰單,刪除之。具體刪除操

作:打開該文件,從文件中讀一條記錄,判斷是否要

刪除,如果是,則舍棄;否則重新寫入文件,讀下一

條記錄。

(4)信息瀏覽模塊讀處罰單信息文件,輸出記錄。

(5)信息查詢模塊通過菜單選擇查詢字段:車輛

駕駛員開單交警,分別按照車牌號、駕照號、開單

交警號采用基本的查找算法查找交通處罰單信息文

件,如果找到相應(yīng)得記錄則輸出處罰單信息,否則

輸出“您所查找的信息不存在!?!?/p>

(6)信息統(tǒng)計模塊提示輸入駕駛員的駕照號和時

間段。設(shè)置一個計數(shù)器,初始化為0o采用基本算法

查找交通處罰單信息文件,比較駕照號,如果駕照號

匹配,再看處罰單時間是否出于查詢時間段內(nèi),如果

是,則計數(shù)器加1,并輸出該處罰單號。文件查找結(jié)

束后,輸出計數(shù)器的值。

第十九題:學(xué)生證的管理系統(tǒng)設(shè)計

1、需求分析:學(xué)生證信息采用文件存儲,因而要

提供文件的輸入輸出操作;給定學(xué)號或班號,做相應(yīng)

得操作,要提供查找操作;顯示信息要提供顯示操作;

修改和刪除信息要提供文件的修改和刪除操作;提

供一些統(tǒng)計各類信息的功能要實現(xiàn)統(tǒng)計操作;另外提

供鍵盤式選擇菜單以實現(xiàn)功能選擇。

2、總體設(shè)計:整個管理程序被設(shè)計為數(shù)據(jù)輸入模

塊、數(shù)據(jù)查找模塊、數(shù)據(jù)修改模塊、數(shù)據(jù)刪除模塊和數(shù)

據(jù)統(tǒng)計模塊。

3、詳細(xì)設(shè)計

數(shù)據(jù)結(jié)構(gòu)采用結(jié)構(gòu)體,設(shè)計學(xué)生證信息結(jié)構(gòu)體:

StructstudentCard

{Charname[10];

Intsex;//0表示男,1表示女

CharstuNo[10];//學(xué)號

IntclassNo;〃班號...〃其他信息

}StuCard;

(1)主函數(shù)

主函數(shù)中,顯示功能菜單:信息輸入(1)信息

查找(2)信息修改(3)信息刪除(4)信息統(tǒng)計

(5)按相應(yīng)的數(shù)字鍵則進入相應(yīng)的計算模塊。

(2)數(shù)據(jù)輸入模塊輸入學(xué)生的學(xué)生證信息,把該

信息以追加的方式寫入學(xué)生證信息管理文件。

(3)數(shù)據(jù)查找模塊進入該模塊,首先顯示提示菜

單:按學(xué)號查找(1)按班級查找(2)按學(xué)號查找,

則提示輸入學(xué)號,然后采用基本查找算法(順序查找)

在學(xué)生證信息文件中查找學(xué)號字段,當(dāng)找到該記錄時,

則輸出該學(xué)生信息,停止繼續(xù)查找。按班級查找,則

提示輸入班級班號,然后采用基本查找算法(順序查

找)在學(xué)生證信息文件中查找班號字段,如果班號匹

配,則輸出該學(xué)生信息,直到文件結(jié)束。

(4)數(shù)據(jù)修改模塊在主菜單中選擇(3),則進

入數(shù)據(jù)修改模塊。屏幕上提示輸入要修改的學(xué)生學(xué)號。

輸入學(xué)號后,則采用基本查找算法找到該學(xué)生信.息,

修改之。

(5)數(shù)據(jù)刪除模塊與數(shù)據(jù)修改模塊相似,只是找

到相應(yīng)的學(xué)生信息后刪除,即不再寫入文件。

(6)數(shù)據(jù)統(tǒng)計模塊提供對班級學(xué)生數(shù)、女生人數(shù)、

男生人數(shù)的統(tǒng)計。通過菜單選擇統(tǒng)計字段。建立一個

計數(shù)器,初始化為0。例如統(tǒng)計班級學(xué)生數(shù),則提示

輸入班號,然后查找學(xué)生證信息文件,比較班號,如

果匹配,則計數(shù)器加1,當(dāng)文件結(jié)束后,輸出計數(shù)器

的值。女生人數(shù)和男生人數(shù)的統(tǒng)計與此類似。

第二十題:客房管理系統(tǒng)

1、需求分析:實現(xiàn)用戶登記功能,要提供結(jié)構(gòu)體

的輸入操作;實現(xiàn)統(tǒng)計功能,要提供相應(yīng)的統(tǒng)計操作;

實現(xiàn)查詢功能,要提供查找操作;實現(xiàn)修改功能,要

提供修改操作;另外還要提供鍵盤式菜單實現(xiàn)功能選

擇。

2、總體分析:整個客房管理系統(tǒng)被設(shè)計為用戶登

記模塊、統(tǒng)計模塊、查詢模塊和修改模塊。

3、詳細(xì)分析

數(shù)據(jù)結(jié)構(gòu)采用結(jié)構(gòu)體,設(shè)計如下結(jié)構(gòu)體:

〃客戶結(jié)構(gòu)體

structClient

{charName[20];〃姓名

intSex;〃性別,0表示男,1表示

intAge;//年齡

charID_card[20];〃居民身份證;

intyear;intmonth;intdate;//

住店時間);

〃客房結(jié)構(gòu)體

structHotel

{intRoom_ID;〃房間號

intTel;//電話

intPrice;〃價格

boolSign;〃標(biāo)記房間是否為空房

間;

structClientClient_list;〃實現(xiàn)

兩個結(jié)構(gòu)體的嵌套

}Room[NUM];

(1)用戶登記模塊提示用戶輸入自身信息以及

客房信息,把數(shù)據(jù)存入Room數(shù)組中。(2)統(tǒng)

計模塊18設(shè)置計數(shù)器,順序遍歷Room數(shù)組來實

現(xiàn)。實現(xiàn)對房客數(shù)、某一天的房客數(shù)的統(tǒng)計。

(3)查詢模塊通過基本查找算法查找Room數(shù)

組??梢园捶块g號、價格、房間標(biāo)記、用戶姓名、

居民身份證查詢。

(4)修改模塊采用基本查找算法在數(shù)組中找到

要修改的數(shù)據(jù),直接更改。

第二十一題:商品銷售管理系統(tǒng)設(shè)計

功能要求:

某公司有四個銷售員(編號:1-4),負(fù)責(zé)銷售五

種產(chǎn)品(編號:1-5)。每個銷售員都將當(dāng)天出售的每

種產(chǎn)品各寫一張便條交上來。每張便條包含內(nèi)容:

1)銷售員的代號

2)產(chǎn)品的代號

3)這種產(chǎn)品的當(dāng)天的銷售額

每位銷售員每天可能上繳0-5張便條。假設(shè),收

集到了上個月的所有便條,編寫一個處理系統(tǒng),讀取

上個月的銷售情況(自己設(shè)定),進行如下處理。

1)計算上個月每個人每種產(chǎn)品的銷售額。

2)按銷售額對銷售員進行排序,輸出排序結(jié)果(銷

售員代號)

3)統(tǒng)計每種產(chǎn)品的總銷售額,對這些產(chǎn)品按從高

到底的順序,輸出排序結(jié)果(需輸出產(chǎn)品的代號和銷

售額)

第二十二題:學(xué)生宿舍管理系統(tǒng)設(shè)計

【說明】實現(xiàn)簡單的學(xué)生宿舍基本信息管理,宿舍的

基本信息包括樓號、房間號、面積、所容納人數(shù)、已

入住人數(shù)等

基本要求:

(1)設(shè)計簡單的菜單,能夠進行系統(tǒng)功能選擇。

(2)實現(xiàn)信息的錄入功能。

(3)在已有信息的基礎(chǔ)上添加新的記錄。

(4)刪除指定房間號的記錄。

(5)修改指定房間號的記錄

(6)實現(xiàn)信息的瀏覽功能

(7)按房間號查詢功能

(8)按已入住人數(shù)排序功能

第二十三題:學(xué)生選修課程系統(tǒng)設(shè)計

【說明】假定有n門課程,每門課程有課程編號,課

程名稱,課程性質(zhì),總學(xué)時,授課學(xué)時,實驗或上機

學(xué)時.,學(xué)分,開課學(xué)期等信息,學(xué)生可按要求(如總

學(xué)分不得少于60)自由選課。試設(shè)計一選修課程系統(tǒng),

使之能提供以下功能:

(1)系統(tǒng)以菜單方式工作

(2)課程信息錄入功能(課程信息用文件保存)

(3)課程信息瀏覽功能

(4)查詢功能:(至少一種查詢方式)

按學(xué)分查詢

按課程性質(zhì)查詢

(5)系統(tǒng)進入畫面(靜態(tài)或動畫)

第二十四題:單項選擇題標(biāo)準(zhǔn)化考試系統(tǒng)設(shè)計

功能要求:

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論