C++ 課程設(shè)計說明書車次信息管理系統(tǒng)_第1頁
C++ 課程設(shè)計說明書車次信息管理系統(tǒng)_第2頁
C++ 課程設(shè)計說明書車次信息管理系統(tǒng)_第3頁
C++ 課程設(shè)計說明書車次信息管理系統(tǒng)_第4頁
C++ 課程設(shè)計說明書車次信息管理系統(tǒng)_第5頁
已閱讀5頁,還剩10頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、課程設(shè)計(論文)任務(wù)書 軟件 學(xué)院軟件+會計專業(yè)2009-04 班 一、課程設(shè)計(論文)題目 車次信息管理系統(tǒng) 二、課程設(shè)計(論文)工作自2010 年6月13 日起至 2009 年 6月 18 日止。三、課程設(shè)計(論文) 地點: 教5204 四、課程設(shè)計(論文)內(nèi)容要求:1本課程設(shè)計的目的1、使學(xué)生進(jìn)一步理解和掌握課堂上所學(xué)內(nèi)容。2、使學(xué)生掌握軟件設(shè)計的基本內(nèi)容和設(shè)計方法,并培養(yǎng)學(xué)生進(jìn)行規(guī)范化軟件設(shè)計的能力。3、使學(xué)生掌握使用各種計算機資料和有關(guān)參考資料,提高學(xué)生進(jìn)行程序設(shè)計的基本能力。 4、提高學(xué)生的論文寫作能力2課程設(shè)計的任務(wù)及要求1)基本要求:1.分析題目,查閱相關(guān)資料;2.算法設(shè)計;

2、3.編寫代碼并調(diào)試;4.完成課程設(shè)計報告。 2)創(chuàng)新要求: 在基本要求達(dá)到后,可進(jìn)行創(chuàng)新設(shè)計。3)課程設(shè)計論文編寫要求(1)要按照書稿的規(guī)格打印謄寫畢業(yè)論文(2)論文包括目錄、緒論、正文、小結(jié)、參考文獻(xiàn)、謝辭、附錄等(3)畢業(yè)論文裝訂按學(xué)校的統(tǒng)一要求完成4)答辯與評分標(biāo)準(zhǔn): (1)完成問題的解決方法分析:20分; (2)算法設(shè)計:30分; (3)測試數(shù)據(jù):30分;(4)回答問題:20分5)參考文獻(xiàn): 1.譚浩強 著,c+程序設(shè)計m,清華大學(xué)出版社出版 2.黃明等編著,面向?qū)ο虺绦蛟O(shè)計習(xí)題詳解m,機械工業(yè)出版社3. 呂鳳翥編著,c+語言基礎(chǔ)教程m,清華大學(xué)出版社出版 6)課程設(shè)計進(jìn)度安排內(nèi)容 天

3、數(shù)地點構(gòu)思及收集資料 1天圖書館編程與調(diào)試 2天 實驗室 撰寫論文 1天 學(xué)生簽名: 2010年 6 月 13 日課程設(shè)計(論文)評審意見(1)完成分析(20分):優(yōu)()、良()、中()、一般()、差(); (2)設(shè)計過程(40分):優(yōu)()、良()、中()、一般()、差(); (3)完成調(diào)試(20分):優(yōu)()、良()、中()、一般()、差();(4)回答問題(20分):優(yōu)()、良()、中()、一般()、差();(5)格式規(guī)范性及考勤是否降等級:是()、否()評閱人: 劉美香 職稱: 講師 2010 年6月 29 日目 錄目 錄3一程序設(shè)計的目的與要求41.程序設(shè)計目的42.程序設(shè)計要求4二程序

4、設(shè)計說明41.程序功能簡介42.程序設(shè)計思想53.程序設(shè)計資料調(diào)研54.關(guān)鍵算法5三程序截圖6四程序清單9五.測試數(shù)據(jù)14六課程設(shè)計總結(jié)15七參考文獻(xiàn)15一程序設(shè)計的目的與要求1.程序設(shè)計目的(1)使學(xué)生進(jìn)一步理解和掌握課堂上所學(xué)內(nèi)容。(2)使學(xué)生掌握軟件設(shè)計的基本內(nèi)容和設(shè)計方法,并培養(yǎng)學(xué)生進(jìn)行規(guī)范化軟件設(shè)計的能力。(3)使學(xué)生掌握使用各種計算機資料和有關(guān)參考資料,提高學(xué)生進(jìn)行程序設(shè)計的基本能力。 (4)提高學(xué)生的論文寫作能力(5)本次課程設(shè)計是計算機專業(yè)的主要實踐性教學(xué)環(huán)節(jié)之一,要求運用所學(xué)專業(yè)的相關(guān)知識,結(jié)合實際操作與應(yīng)用而進(jìn)行的一次編程綜合能力的訓(xùn)練,旨在培養(yǎng)學(xué)生在應(yīng)用軟件程序設(shè)計方面,

5、初步掌握解決實際應(yīng)用問題時所應(yīng)具有的查閱資料、技術(shù)標(biāo)準(zhǔn)和規(guī)范,以及設(shè)計程序、調(diào)試程序、編寫基本軟件等能力,為畢業(yè)設(shè)計及今后從事專業(yè)相關(guān)的工作打下一定的基礎(chǔ)。2.程序設(shè)計要求(1)必須基于面向?qū)ο蟮某绦蛟O(shè)計思想進(jìn)行設(shè)計。(2)針對所選題目,分組收集材料,并進(jìn)行項目分析,實現(xiàn)必要的增加、刪除、修改、查詢、統(tǒng)計以及存儲等具體功能。(3)按規(guī)定的格式編寫課程設(shè)計報告。二程序設(shè)計說明1.程序功能簡介此程序名稱為車次信息管理系統(tǒng),顧名思義,這是一個可以管理列車基本信息的一個基本程序,它可以實現(xiàn)簡單的列車信息查詢和管理車次信息以及查看等功能,具體有以下功能: (1) 為了讓程序開始界面一目了然,使得程序更容

6、易操作,故再次設(shè)計了用戶登陸界面。(2) 主要功能還是車次信息的管理與維護(hù),包括有:增加車次信息、刪除車次信息、修改車次信息。其中車次信息包括途經(jīng)各站點的名稱及時間。(3) 當(dāng)然作為一個信息的管理系統(tǒng),另一項主要的功能就是車次的查詢系統(tǒng),本程序設(shè)計了查詢時可實現(xiàn)按站名查詢、按車次查詢,并且提供站站查詢。(4) 最后一項功能即為列車統(tǒng)計,即輸入一個站名,可統(tǒng)計經(jīng)過該站點的列車數(shù)目,如果輸入兩個站名,則可以統(tǒng)計同時經(jīng)過這兩個站點的所有列車數(shù)目。2.程序設(shè)計思想設(shè)計這個程序首先得先想到,作為一個程序設(shè)計員,編寫一個程序就得盡可能的使用最簡潔的語句,實現(xiàn)和表達(dá)出最完美的的應(yīng)用系統(tǒng)。根據(jù)功能要求,設(shè)計功

7、能效果,預(yù)先把握全局定位,根據(jù)實際需要和認(rèn)為習(xí)慣對界面預(yù)先處理,然后運用所學(xué)知識寫出基本框架和主要算法,最后寫出全部的代碼,運行并實現(xiàn)程序功能。3.程序設(shè)計資料調(diào)研本課題的要求是車次的信息管理,要求完成其基本功能。其信息經(jīng)過搜索,查得列車的時刻表。在進(jìn)行莫衷車次信息管理操作時,通常是先顯示所有的車次信息,再進(jìn)行符合自己車次信息的操作,本系統(tǒng)遵循了這一習(xí)慣。4.關(guān)鍵算法(1)struct數(shù)據(jù)類型的應(yīng)用:首先我們需要了解車次信息管理系統(tǒng)這一個程序需要添加什么樣的功能,所謂車次信息,當(dāng)然包括了站點的名稱、時間和車次號碼等信息,在本程序中使用了struct數(shù)據(jù)類型,所用最多的是while循環(huán)結(jié)構(gòu)和if

8、語句,然而這也正成為了它的特色。循環(huán)體的嵌套思路清晰,目的明確,格式規(guī)范,易于閱讀和理解。if語句的逐層運用正形象化的描述了計算機的工作流程,而且與人的一般習(xí)慣吻合,簡單明了,易于觀察理解它的來龍去脈,思路清晰直觀。(2)類的應(yīng)用:在相對了解的程序索要設(shè)計的基本功能之后,本程序我還還使用了類語句,定義一個train類,添加共有成員函數(shù),包括增加車次信息的函數(shù),修改車次信息的函數(shù)和查詢車次的函數(shù)等等。(3)指針的應(yīng)用:本程序中大量的應(yīng)用的了指針,在train類中添加了私有成員指針,應(yīng)用也是本程序的一個特色,應(yīng)用指針是的本程序運行的效率大大提高,同時也使得程序一目了然,思路清晰。三程序截圖1.車次

9、信息的添加(如圖3-1)圖3-1 信息添加2.車次信息的修改(如圖3-2)圖3-2 信息修改3.車次信息的查找(如圖3-3)圖3-3 信息查詢4.車次信息的顯示(如圖3-4)圖3-4 信息顯示5.車次信息的刪除(圖3-5)圖3-56.列車統(tǒng)計(3-6)圖3-6 列車統(tǒng)計四程序清單車次信息管理系統(tǒng)源程序:#include#include#include#includetypedef struct node /定義一個結(jié)構(gòu)體char n20; char ccnum20; char time10; struct node*next; node; node *start;class employeep

10、rivate:node *p;node *q;node *t;public:employee(node *m) t=p=m;void add(); /公有成員函數(shù)增加車次信息void edit(); /公有成員函數(shù)修改車次信息void lookfor(); /公有成員函數(shù)查找車次void printall(); /公有成員函數(shù)顯示車次信息void del(); /公有成員函數(shù)刪除車次信息void deleteall(); /公有成員函數(shù)刪除所有車次信息void tongji(); /公有成員函數(shù)列車統(tǒng)計;void employee:add() /定義添加車次信息的函數(shù)start=new nod

11、e;q=start;q-next=p;p=q;coutq-n;coutq-ccnum;coutq-time;void employee:edit() /定義編輯車次信息的函數(shù)p=q;char n20;cout請輸入車次號碼:n;while(p!=t&(strcmp(p-ccnum,n)!=0)!=0)p=p-next;if(p=t)cout沒有找到您要找的車次!endl;elsecoutp-n;coutp-ccnum;coutp-time;void employee:lookfor() /定義查詢車次的函數(shù)p=q;char n20;cout請輸入車次號碼:n;while(p!=t&(strcm

12、p(p-ccnum,n)!=0)!=0)p=p-next;if(p=t)cout沒有找到您要找的車次!endl;elsecout經(jīng)過站點名稱:nendl;cout車次號碼:ccnumendl;cout開車時間:timeendl;void employee:printall() /定義顯示車次信息的函數(shù)p=q;while(q!=t)cout經(jīng)過站點:nendl;cout車次號碼:ccnumendl;cout發(fā)車時間:timenext;q=p;void employee:del() /定義刪除車次信息的函數(shù)node *k;k=new node;k=p=q;char n20;cout請輸入車次號碼:

13、n;while(p!=t&(strcmp(p-ccnum,n)!=0)!=0)k=p;p=p-next;if(p=t)cout沒有找到您要找的車次!next;elsek-next=p-next;free(p);void employee:deleteall() /定義刪除全部車次信息的函數(shù)while(q!=t)p=q;q=q-next;free(p);cout;void employee:tongji() /定義統(tǒng)計車次信息的函數(shù)int sm=0;node *k;k=new node;k=p=q;char n20;cout請輸入姓名:n; while(n)k=p;p=p-next;if(p=t

14、)if(strcmp(q-n,n)=0)sm+;break;if(strcmp(p-n,n)=0)sm+;if(sm=0)cout沒有找到您要找的車次!endl;cout統(tǒng)計車次數(shù)目為:smendl;void display() /定義程序清單函數(shù)cout 車次信息管理系統(tǒng)endl;cout-程序清單-endl;cout-1:增加車次信息!-endl;cout-2:修改車次信息!-endl;cout-3:查找車次!-endl;cout-4:顯示車次信息!-endl;cout-5:刪除車次信息!-endl;cout-6:刪除所有車次信息!-endl;cout-7:列車統(tǒng)計!-endl;cout-

15、0:退出!-endl;void main() /主函數(shù),程序開始運行node *pa;int i,j,flag;char ch;start=null;pa=(node*)malloc(sizeof(struct node);employee a(pa);while(j)display();couti;while(!(i=1|i=2|i=3|i=4|i=5|i=6|i=7|i=0)couti;if(i=1)while(flag)a.add(); coutch;if(ch=y|ch=y)flag=1;elseif(ch=n|ch=n)flag=0;else if(i=0)cout感謝您的使用!en

16、dl;j=0;elseif(start=null)cout請先建立車次信息!endl;else if(i=2)a.edit();else if(i=3)a.lookfor();else if(i=4)a.printall();else if(i=5) a.del();else if(i=6)a.deleteall();else if(i=7) a.tongji();cout請按回車鍵繼續(xù)endl;getch();五.測試數(shù)據(jù)1.程序的編輯環(huán)境:(如圖5-1)圖5-12.數(shù)據(jù)的測試(如圖5-2)圖5-2六課程設(shè)計總結(jié)通過本次為期一周的c+課程設(shè)計,我不僅與同組成員共同編寫出了“車次信息管理系統(tǒng)”

17、這一程序,而且在一定程度上對自己的編程能力進(jìn)行了檢驗。雖然我們完成了這樣的一個較大型的程序的編寫工作,但我還是發(fā)現(xiàn)自己在諸多方面存在不足:首先,在編程思想方面缺乏創(chuàng)新性與連貫的構(gòu)思;其次,面向?qū)ο蠓矫娴闹R掌握的程度仍然不夠;最大的問題還在于,將細(xì)節(jié)知識運用到具體編程中的能力仍需繼續(xù)鍛煉。做課設(shè)不僅讓我修補了以前學(xué)習(xí)的漏洞,也讓我知道一個道理:編程需要興趣和實際動手。這應(yīng)該可以借鑒在老師的教學(xué)工作上。創(chuàng)新思維至關(guān)重要,這不僅讓我們寫出精簡的代碼,也有助于開發(fā)出高效的程序。完成設(shè)計后,我覺得收獲不少,首先是自己首次應(yīng)用所學(xué)知識做出了這個系統(tǒng),以前從未做過這樣大型的程序,這次的課設(shè)感覺很有成就感;而收獲更大的是讓我學(xué)到了怎樣和他人合作完成一件任務(wù),以及在完成的過程中如何溝通。完成設(shè)計是在一定時間內(nèi)完成的,在完成這個設(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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論