




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領
文檔簡介
1、學 號: 2006 2007 學年 第 1 學期 xxx 科技大學科技大學 windows 程序設計 課程設計報告課程設計報告 題 目: c+程序設計程序設計 專 業(yè): 計算機科學與技術(shù)計算機科學與技術(shù) 班 級: 計科應計科應 05 姓 名: 指導教師: 成 績: 電子信息工程學院 2007 年3月15日 摘要摘要 該論文分別對軟件的需求進行分析,對軟件的概要設計和軟件的詳細設計 進行闡述,以及對軟件的組裝及測試的詳細敘述,并附加了軟件的使用說明書 (操作手冊) 。程序設計一般由兩部分組成:算法和數(shù)據(jù)結(jié)構(gòu),合理選擇和實現(xiàn) 一個數(shù)據(jù)結(jié)構(gòu)與處理這些數(shù)據(jù)結(jié)構(gòu)具有同樣的重要性。以將每個功能分別編譯 實
2、現(xiàn),再通過函數(shù)包含,調(diào)用等方法實現(xiàn)各項功能間的連接為設計思想,并采 用將學生當作一個整體,整體類型為結(jié)構(gòu)體,結(jié)構(gòu)體中的域表示學生的屬性的 這種定義結(jié)構(gòu)作為數(shù)據(jù)結(jié)構(gòu)。軟件將各個模塊的功能分為列菜單、表明結(jié)構(gòu)體、 錄入、排序、查詢、插入及讀取等來組成整個程序,實現(xiàn)對學生成績的系統(tǒng)管 理。該程序界面友好,易于操作,使操作者和使用者應用更加方便。 關(guān)鍵字:數(shù)據(jù)結(jié)構(gòu),設計思想,界面,軟件需求,概要設計,詳細 設計,組裝及測試等 目錄 第 1 章 軟件設計內(nèi)容.1 11 軟件達到的目的.1 12 軟件功能說明.1 1.2.1 功能分析說明圖.1 1.2.2 各項功能說明.1 13 軟件功能的驗收標準.2
3、第 2 章 軟件設計環(huán)境與原理.3 2.1 設計環(huán)境與模塊的劃分.3 2.1.1 軟件設計環(huán)境.3 2.1.2 軟件模塊的劃分.3 2.2 軟件設計主要原理.4 2.2.1 采用的主要數(shù)據(jù)結(jié)構(gòu)類型.4 2.2.2 各個模塊之間的調(diào)用關(guān)系和數(shù)據(jù)儲存格式說明.4 2.2.3 主要流程圖.4 第 3 章 軟件的設計過程.9 3.1 各軟件模塊之間的調(diào)用方式.9 3.2 軟件中實現(xiàn)各項功能的函數(shù)與程序代碼.9 3.3 數(shù)據(jù)保存方式以及格式.11 第 4 章 設計結(jié)果與分析.12 41 軟件使用結(jié)果.12 總結(jié).17 致謝.18 參考文獻.19 第 1 章 軟件設計內(nèi)容 1 11 1 軟件達到的目的 該
4、軟件主要是實現(xiàn)對學生成績進行系統(tǒng)化的管理,首先可以對學生基本信息進行 輸入和存取,其次可以讀取顯示學生的相關(guān)信息,然后可以刪除和插入學生的相關(guān)信 息,還有就是可按學號查詢此學號的學生的相關(guān)信息,并按照總成績算出的平均分的 高低進行排序。由此來系統(tǒng)化管理學生成績,并達到簡易操作的目的。 12 軟件功能說明 1.2.1 功能分析說明圖 該軟件功能分析說明圖如 1-2-1 所示: 學生成績管理系統(tǒng) 圖圖:1-2-1 1.2.2 各項功能說明 (1)學生基本信息的錄入和保存: 學生基本信息錄入與保存 數(shù)據(jù)的讀取 數(shù)據(jù)刪除 數(shù)據(jù)追加 學生信息查找 按平均成績排序 退出系統(tǒng) 這部分的功能主要包括信息的錄入
5、和保存和總分、平均分的計算,首先按程序提示輸入所要輸入的學生人數(shù),接著是 分別輸入有關(guān)學生的相關(guān)信息包括學號、姓名、性別以及學生各科成績的分數(shù)等。在錄入數(shù)據(jù)的同時,系統(tǒng)將對信息 的合法性進行檢驗(學號范圍為 10011020、姓名在 7 個字節(jié)之內(nèi)、性別只能輸入 m(男 male)或 f(女 fmale)、各科成 績均限定在 0100 之間) ,若用戶錄入了不合法的數(shù)據(jù)系統(tǒng)將會作出提示,并且要求重新輸入。如果合法性成立則錄入 完畢后系統(tǒng)將顯示全部學生相關(guān)信息,信息中已包含對學生成績總分的計算和其平均分的計算結(jié)果。最后輸出學生的 信息表,與是否保存提示,選擇存盤后,系統(tǒng)則自動將學生信息存入(li
6、st.dat)電腦。 (2)讀取學生信息: 此功能是將原錄入并保存的的學生信息讀出,并在屏幕上顯示出來。 (3)刪除學生信息: 進入該項功能界面后,用戶可以通過學生的姓名對謀個學生信息進行刪除。 (4)追加學生信息: 進入插入界面,系統(tǒng)將提示輸入新學生的相關(guān)信息,程序則會將新的信息 插入原學生信息清單中,并將新的學生信息列表輸出,以方便用戶的確認。 (5)按學號查找學生信息: 此項功能可以根據(jù)擁護輸入的學生學號查出該學生的所有信息。 (6)按照平均分輸出學生信息清單。 選擇次項功能后,系統(tǒng)將自動在屏幕上顯示出所有學生按照平均成績的高 低排序后的清單。 (7)退出系統(tǒng),結(jié)束任務。 13 軟件功能
7、的驗收標準 一、有較為美觀簡潔大方的菜單,能保證用戶方便、直觀、快捷的熟悉并使 用軟件的各項功能。 二、有嚴密正確的數(shù)據(jù)驗證功能和數(shù)據(jù)處理功能,能夠求和、求平均成績, 對總成績進行排序,對數(shù)據(jù)進行保存和讀取,能按學號查找學生信息,以及插 入和刪除學生信息。 三、系統(tǒng)要有一定的可靠性。 第 2 章 軟件設計環(huán)境與原理 2.1 設計環(huán)境與模塊的劃分 2.1.1 軟件設計環(huán)境 microsoft visual c+ 6.0 2.1.2 軟件模塊的劃分 該軟件主要組成模塊和各個模塊之間的調(diào)用關(guān)系如圖2-1: 學生成績管理系統(tǒng) 主菜單 主函數(shù)(包含 以下所有函數(shù)) 圖圖 2-1 其中學生基本信息的錄入和
8、保存里已經(jīng)包含了總分和平均分的計算、按學號排 序輸出的處理。 學生基本信息錄入與保存 數(shù)據(jù)的讀取 數(shù)據(jù)刪除 數(shù)據(jù)追加 學生信息查找 按平均成績排序 退出系統(tǒng) 1 2365478 2 2 9 2.2 軟件設計主要原理 2.2.1 采用的主要數(shù)據(jù)結(jié)構(gòu)類型 該程序采用的是結(jié)構(gòu)體類型來處理學生的所有基本信息,如下所述。 包含的庫函數(shù)有: # include # include # include # include # include 包含的函數(shù)有: main() /*主函數(shù)*/ menu() /*菜單函數(shù)*/ input() /*輸入與保存函數(shù)*/ bubble() /*排序輸出函數(shù)*/ query
9、() /*查找信息函數(shù)*/ insert() /*追加信息函數(shù)*/ delete() /*刪除信息體函數(shù)*/ read() /*文件讀取體函數(shù)*/ 包含的類: class student() 2.2.2 各個模塊之間的調(diào)用關(guān)系和數(shù)據(jù)儲存格式說明 各函數(shù)模塊之間的調(diào)用關(guān)系主要是主函數(shù)調(diào)用所有其它功能函數(shù)和菜單函 數(shù),并利用循環(huán)使各個功能函數(shù)運行完畢后都會回到菜單。該程序的數(shù)據(jù)以二 進制儲存。 2.2.3 主要流程圖 一、主函數(shù) 開始 圖圖 2-2 二、數(shù)據(jù)的輸入和保存 2 輸出 struct i 輸入 n、 struct i 輸出是否保存提 示信息 3 4 78 三、學生信息的讀取 四、數(shù)據(jù)的刪
10、除 no yes yes yes no 圖圖 2-4 圖圖 2-5 五、根據(jù)平均成績排序 六、退出系統(tǒng) no yes stu_list 為空 輸出“can not open file” 輸出 stui i n 1 輸出是否刪 除提示 確認 1 1 10 輸入“stu i ” n=n-1, stu i =stu i +1 in-1 確認 10 將輸入的學生信息按照 平均成績的高低排序 輸出新的學生 成績單 getch(); 輸出是否 退出提示 推出程序 圖圖 2-7 1 56 確定 七、學生信息的追加 八、根據(jù)學號查詢 學生信息 no yes 圖圖 2-9 圖圖 2-8 輸出是否追加 提示 1
11、輸入要追加的 學生信息 進行追加數(shù) 據(jù)處理 輸出追加后 的新學生信 息 getchar (); 1 輸入要學生學 號 輸出該學號 學生的信息 getch() ; 1 第 3 章 軟件的設計過程 3.1 各軟件模塊之間的調(diào)用方式 程序中各個模塊之間的調(diào)用方式主要是通過文件的包含和函數(shù)的調(diào)用實現(xiàn) 的,用文件的形式把各個函數(shù)分開,再用頭文件把它們包含進來,使用主函數(shù) 進行調(diào)用。 3.2 軟件中實現(xiàn)各項功能的函數(shù)與程序代碼 一、一個包含學生基本信息的類 class student() public: char *name; int id; char sex; float math, eng, comp
12、, totll, aver; . 二、輸入函數(shù) void input() . for(j=1; j=n; j+) cout 輸入學生信息 jendl; obj.setup(); /用一個佛人 for 循環(huán)將學生信息錄入。 三、信息的保存與讀取 保存:void save() int i; ofstream fout(list.txt); if(!fout) coutcannot open output file!n,; for(i=1; i=s; i+) foutobi.id obi.sex obi.math obi.eng p obi.totll obi.averendl;
13、fout.close(); 讀?。?void read() ifstream fin(list_1); if(!fin) couta; coutaendl; fin.close(); 四、菜單函數(shù) void menu() coutnn; cout- 學生成績系統(tǒng) -endlendl; couttt1.錄入與保存學生信息.n; couttt2.讀取學生信息.n; couttt3.刪除學生信息.n; couttt4.追加學生信息.n; couttt5.查詢學生信息.n; couttt6.顯示成績名次.n; couttt7.退出系統(tǒng).nnn; couttt 請選擇功能項: ; 五、添加學生信息函數(shù)
14、void add() int i,j=1, d=s+1; cout輸入要添加學生的信息:endl; obd.setup(); coutendl-學生信息表 - endl; coutendl 學號 姓名 性別 數(shù)學 英語 計算機 總分 平均分endl; for(i=1; i=s+j; i+) obi.show(); ofstream fout(list.txt); if(!fout) coutcannot open output file!n,; for(i=1; i=s+j; i+) foutobi.id obi.sex obi.math obi.eng p obi.totl
15、l obi.averendl; fout.close(); getchar(); j+; 3.3 數(shù)據(jù)保存方式以及格式 本學生信息系統(tǒng)將能自動把輸入的學生信息保存為 .dat 文件,全名為 list.dat ,在文件的讀取時,系統(tǒng)將能自動把該二進制文件讀出,并在屏幕上顯示出學 生信息。 第 4 章 設計結(jié)果與分析 41 軟件使用結(jié)果 在此,我們將把軟件使用過程寫出,并對此程序的一些細節(jié)和具體的操 作方法加以說明,說明如下: 1、將軟件進行初始化。 2、進入程序菜單,界面如圖 4-1-1: 菜單界面菜單界面 圖圖 4-1-14-1-1 界面顯示的是“一個學生信息系統(tǒng)” ,總的操作流程有七個方面:
16、 (1) 輸入和存取學生信息; (2) 讀取學生信息; (3) 用人名從列表中刪除學生信息; (4) 在列表中插入學生信息; (5) 用學號查詢學生信息; (6) 按總成績的高低對學生成績進行排序; (7) 退出菜單界面。 最后是提示用戶做出要軟件進行怎樣功能運行的選擇。 3、輸入和存取學生信息:選擇菜單界面的第一個選擇,按 enter 鍵進入 此選擇界面,出現(xiàn)的界面如圖 4-1-2: 學生人數(shù)學生人數(shù) 圖圖 4-1-24-1-2 在這個界面給出了學生人數(shù)的選擇,也就是說,用戶想要輸入多少個 學生的信息,已經(jīng)輸入學生人數(shù)后,按 enter 鍵進入輸入界面,輸入界面 如圖 4-1-3: 輸入學生
17、信息輸入學生信息 圖圖 4-1-3 用戶可在此界面上輸入想要輸入的學生的相關(guān)信息(學號、姓名、性別、 數(shù)學分數(shù)、英語以及計算機科目的分數(shù)等) ,但是由于程序合法的要求, 所以姓名的范圍規(guī)定在 4 到 7 個字節(jié)之間,學號的范圍是 1001-1021,性 別分別是男(m)或女(f),而分數(shù)的范圍是 0-100。 如果輸入的數(shù)據(jù)不在這些范圍內(nèi),則界面上將顯示錯的數(shù)據(jù)輸入的 句子,用戶將重新輸入正確的數(shù)據(jù),才可以進行下面的程序。如果全部 學生的信息輸入完畢,按 enter 鍵則進入了存取界面,如圖 4-1-4: 存取學生信息存取學生信息 圖圖 4-1-4 界面上出現(xiàn)全部學生的清單,最后有提醒用戶是否
18、要將如上信息存儲的 提示信息,如果要存儲則輸入 y,不存儲則輸入 n,最后按 enter 完成當 前和結(jié)束當前操作。并回到菜單界面。 4、讀取學生信息:選擇菜單界面第二個選擇,按 enter 鍵進入此界面, 則出現(xiàn)的界面如圖 4-1-5: 讀取學生信息讀取學生信息 圖圖 4-1-54-1-5 界面上的圖即顯示的是讀取學生信息界面的內(nèi)容,它表示的是全部學生 信息的列表,可按 enter 鍵退出此界面。 5、用人名從列表中刪除學生信息:從菜單界面中選擇第三個選擇,按 enter 鍵入, 則出現(xiàn)圖 4-1-6 的界面; 刪除學生信息刪除學生信息 圖圖 4-1-64-1-6 界面上出現(xiàn)的是刪除學生信息
19、的界面,在界面的開頭有提示用戶輸入 所要刪除的那個學生的學號,按 enter 鍵則界面上顯示出所要刪除的 學生的相關(guān)信息,重復按 enter 鍵界面則顯示出刪除此學生信息后的 新的學生信息列表。 6、在列表中插入學生信息:從菜單界面中選擇 4 輸入,按 enter 鍵進界 面 則出現(xiàn)圖 4-1-7 的界面: 插入學生信息插入學生信息 圖圖 4-1-74-1-7 首先界面上有提示用戶輸入所要插入的學生的學號,然后反復按 enter 鍵輸入所要插入學生的相關(guān)信息。最后將出現(xiàn)新的學生信息列 表。 7、用學號查詢學生信息:從界面選 5 輸入后按 enter 進入此程序,則出 現(xiàn)界面 圖 4-1-9:
20、用學號查詢學生信息用學號查詢學生信息 圖圖 3-3-93-3-9 按照提示信息輸入所要查詢的學生的學號,按 enter 鍵則會出現(xiàn)此學 號的學生相關(guān)的信息,即可查閱他/她的成績和其他信息。 8、按總成績高低對學生成績進行排序:從菜單界面選 6 輸入按 enter 鍵進入程序則出現(xiàn)界面如圖 4-1-10: 排序后的新學生信息列表排序后的新學生信息列表 圖圖 4-1-104-1-10 于是界面上顯示的是按學生的總成績從高到低排序的列表,通過此操作程 序,用戶可以管理學生成績更輕松。 9、退出菜單界面:在菜單界面上輸入 7 按 enter 鍵進入界面如圖 4-1- 11: 退出界面退出界面 圖圖 4
21、-1-114-1-11 則屏幕上顯示出提示退出的信息,并且提示用戶按任意鍵可退出菜單界 面,即完成 當前操作,結(jié)束運行。 總結(jié) 通過兩星期的 c+語言程序設計實習,我們從中受益匪淺,并且對 c+語 言程序設計這一門課程有了更深一步的認識。在實習中,我們可以把這學期所 學的理論知識和實踐聯(lián)系起來,在所要開發(fā)的項目中漸漸成長。雖然我們對這 些 c+語言知識運用得還不是很熟練,但是相信我們也在滴水穿石地成長起來。 發(fā)現(xiàn)問題,提出問題,解決問題,使我們從不足之處出發(fā),尋找新的學習方向。 在實習中,我們設計了一組對學生成績進行管理的系統(tǒng),它基本滿足了界 面友好,易于操作的要求,因此更利于用戶操作方便,運
22、行簡易,從而達到對 學生成績更加有效系統(tǒng)的管理,并且速度更快內(nèi)容更直接地達到用戶所想要的 效果。在該軟件中我們實現(xiàn)了對學生信息的輸入和存取、讀取,對學生相關(guān)信 息的刪除和插入,并且可以按學號查詢學生的相關(guān)信息,以及按平均分的高低 對學生成績進行排序等的功能。但軟件中仍然存在一些不足,例如在輸入有關(guān) 學生的數(shù)據(jù)時名字沒有限定,插入新的學生信息的程序還有待完善,刪除后沒 有把新的學生成績列表進行保存,菜單不美觀等。 我們一邊實習一邊探索,發(fā)現(xiàn)理論和實踐要充分地結(jié)合,是需要扎實的基 本功的,這就表明學好基礎知識是理論付諸實踐的前提。在實習中我們學到了 很多,希望在以后我們能充分利用實習的機會充實自己,并希望這樣的機會能 被更好更多地提供。 2007-3-1 致謝 經(jīng)過這兩
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 渝北石紋地板施工方案
- 碑林區(qū)高一聯(lián)考數(shù)學試卷
- 鼓樓區(qū)樓道出新施工方案
- 電廠排灰委托運行施工方案
- 樓梯間踢腳線粉墻施工方案
- 2025年大數(shù)據(jù)展現(xiàn)平臺合作協(xié)議書
- 數(shù)控加工工藝與編程技術(shù)基礎 教案 模塊二 項目二 綜合件的加工(3-4)
- 加強農(nóng)田基礎設施建設實施方案
- 揮發(fā)性有機物排放控制的法律法規(guī)及政策要求
- 強化基本醫(yī)療衛(wèi)生服務的策略及實施路徑
- 建設2臺66000KVA全封閉低碳硅錳礦熱爐項目竣工環(huán)保驗收監(jiān)測調(diào)查報告
- 工余安健環(huán)管理標準
- 2024內(nèi)蒙古烏審旗圖克鎮(zhèn)圖克工業(yè)園區(qū)中天合創(chuàng)化工分公司招聘20人易考易錯模擬試題(共200題)試卷后附參考答案
- 附件1:腫瘤防治中心評審實施細則2024年修訂版
- 全國計算機二級MS-office選擇題真題題庫(附答案)
- 2025年安徽省合肥市部分校中考化學試題考前模擬試題含解析
- 《江城子-密州出獵》1省名師課賽課獲獎課件市賽課一等獎課件
- DL∕T 868-2014 焊接工藝評定規(guī)程
- 新人教小學五年級數(shù)學下冊《怎樣通知最快》示范教學課件
- 2024年北京中考語文試題及答案
- 2024屆上海市嘉定區(qū)高三語文一模試卷(含答案與解析)
評論
0/150
提交評論