版權(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025云南省建筑安全員考試題庫附答案
- 貴州大學(xué)《計算機藝術(shù)設(shè)計》2023-2024學(xué)年第一學(xué)期期末試卷
- 貴州財經(jīng)大學(xué)《土木工程施工與組織管理》2023-2024學(xué)年第一學(xué)期期末試卷
- 貴陽幼兒師范高等專科學(xué)?!冻鞘薪煌ㄏ到y(tǒng)》2023-2024學(xué)年第一學(xué)期期末試卷
- 2025遼寧省建筑安全員考試題庫及答案
- 2025年湖南省建筑安全員知識題庫及答案
- 2025山西建筑安全員《B證》考試題庫及答案
- 硅湖職業(yè)技術(shù)學(xué)院《計算機輔助設(shè)計一》2023-2024學(xué)年第一學(xué)期期末試卷
- 2025年陜西省建筑安全員C證考試(專職安全員)題庫附答案
- 廣州幼兒師范高等專科學(xué)?!犊萍嘉墨I檢索(理工)》2023-2024學(xué)年第一學(xué)期期末試卷
- 建筑垃圾安全生產(chǎn)管理制度范本
- 酒店總經(jīng)理應(yīng)聘計劃書
- 22G101三維立體彩色圖集
- 2023年CQE客訴工程師年度總結(jié)及下年規(guī)劃
- MQL4命令中文詳解手冊
- 人教版地理七年級上冊期末測試題(4套含答案)
- 水平井施工方案及措施
- 小學(xué)數(shù)學(xué)一年級上冊-期末測試卷(二)含答案-人教版
- 登金陵鳳凰臺
- 資產(chǎn)評估常用數(shù)據(jù)與參數(shù)手冊
- 分子影像學(xué)概論培訓(xùn)課件
評論
0/150
提交評論