




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、六安職業技術學院課程設計報告課程名稱c+課程設計系 別信息工程系所在專業計算機應用技術所在班級計算機1001系統名稱學生成績管理系統組 長小組成員指導教師成 績教師簽字2011年12月 日課程設計時間:2011年12月5日至2011年12月9日目 錄第一章 課程設計概述- 1 -1.2 課程設計的要求- 1 -1.3 課程設計時間安排- 1 -第二章 系統的需求分析與設計- 2 -2.1系統需求分析- 2 -2.1.1系統分析(需求分析)- 2 -2.1.2系統性能要求- 2 -2.1.3系統的功能分析- 3 -2.2系統總體設計- 3 -2.2.1編輯功能可以對數據和信息進行維護,其子目錄下
2、有以下幾個功能- 3 -2.2.2統計功能可以給用戶提供各種統計信息,其子目錄下有以下幾個功能- 3 -2.3 功能需求分析- 3 -2.3.1學生信息錄入模塊- 3 -2.3.2學生信息查找模塊- 3 -2.3.3學生信息顯示模塊- 3 -第三章 系統模塊功能介紹- 4 -3.1 功能模塊- 4 -3.1.1登錄界面- 4 -3.1.2增加學生成績模塊- 4 -3.1.3顯示學生成績模塊- 5 -3.1.4排序統計成績模塊- 5 -3.1.5查找學生成績模塊- 6 -3.1.6刪除學生成績模塊- 6 -3.1.7修改學生信息模塊- 7 -第四章 課程設計總結- 8 -致 謝- 10 -參考文
3、獻- 12 -附錄:源程序代碼- 13 -第一章 課程設計概述1.1 課程設計的目的概念實訓是計算機應用技術相關專業重要的實踐性環節,是在c+語言程序設計課程后進行的一次全面的綜合訓練項目,其目的是: (1)鞏固和加深學生對c+語言程序設計課程的基本知識的理解和掌握; (2)掌握c+語言程序設計編程和程序調試的基本技能; (3)利用c+語言程序設計進行簡單軟件設計的基本思路和方法; (4)提高運用高級語言解決實際問題的能力。1.2 課程設計的要求參加本次實訓的學生必須按照以下要求完成相應的實訓項目: (1)分析問題。把大問題分解成小問題,使用自頂向下的方法給出模塊化設計。 (2)為特定任務設計
4、算法。使用自頂向下或偽代碼等設計手段將模塊細化,并用順序、選擇和循環控制結構進行描述。 (3)將算法用c+描述和實現。 (4)用合適的測試方法檢查程序是否符合最初的要求,為不合適數據設計錯誤陷阱,并提供適當的錯誤信息。 (5)寫出清晰的用戶文檔,確保用戶通過遵循程序中的指示或者使用程序設計者編寫的文檔能成功地運行程序。 (6)寫出技術文檔,對程序中主要標識符的含義或作用加以說明,并提供一個完整的程序流程圖。 (7)調試程序、測試數據過程成功。1.3 課程設計時間安排星期一 查找文獻資料星期二 整理、分析相關資料星期三 編程實現星期四 編程實現星期五 撰寫實習報告第二章 系統的需求分析與設計2.
5、1系統需求分析學生成績管理系統(以下簡稱“系統”)可以用來管理規模較大的成績信息,對學生的成績信息進行維護和統計。系統的目標用戶為老師或其他需要統計各種信息的人員。系統可以極大的減少用戶的工作量,為用戶節省更多的時間,讓用戶在幾秒鐘內獲得各種統計信息,在第一時間對學生成績有全面的了解。系統給用戶提供了簡單而實用的功能。如圖2-1所示圖2-1系統使用菜單式的用戶界面,給用戶以直觀的使用體驗。用戶只要根據系統提示,通過鍵盤輸入相應信息就可以使用系統,操作簡單,不需要任何經驗知識就可以輕松上手。2.1.1、系統分析(需求分析)1) 能夠實現學生學號、姓名、成績的錄入;2) 能夠實現對學生信息的瀏覽、
6、查找、刪除;3) 能夠實現對學生信息按學號順序顯示,成績排名;4) 能夠對各科成績統計情況輸出。2.1.2系統性能要求:1) 系統安全、可靠;2) 功能齊全;3) 操作方便;4) 易于維護和擴充2.1.3系統的功能分析: 資料維護:系統維護包括對各個學生姓名、成績、學號的錄入操作,對數據表中的信息進行瀏覽。 成績查詢:可以對學生成績進行詳細查詢。 排列顯示:包括統計學生排名成績等.2.2系統總體設計系統功能分為兩大部分:編輯和統計。增加學生成績、顯示學生成績、排序統計成績、查找學生成績、刪除學生成績、修改學生信息2.2.1編輯功能可以對數據和信息進行維護,其子目錄下有以下幾個功能:(1) 增加
7、學生成績信息通過鍵盤輸入增加學生成績信息,。通過鍵盤建立最初的信息了,建立后就可以保存成文件形式,方便以后使用。 (2)修改學生成績信息修改學生成績信息:通過用戶提供的學生姓名或學號,檢索到該學生,然后進行修改,可以修改姓名、年齡、各科成績等。(3)刪除學生成績信息刪除某學生的單科成績。(例如,當某學生中期退課后,就可以用此功能將該課程成績刪除)刪除某一個學生。將該學生的全部信息刪除,該學生的數據將不再出現在數據庫中。2.2.2統計功能可以給用戶提供各種統計信息,其子目錄下有以下幾個功能:(1)顯示學生成績信息:可以指定任意科目,并按該科目成績由高到低將學生信息輸出到屏幕。(2)排列學生成績信
8、息:按照學分績優高到低的順序,將學生信息輸出到屏幕。(3)查找學生成績信息:按照學號由小到大的順序將學生信息輸出到屏幕。2.3 功能需求分析 簡易學生成績管理系統主要有六大模塊:學生信息(如學號、姓名、各科成績、年齡等)的錄入文件中;查找學生成績信息;顯示學生成績信息;修改學生成績信息;刪除學生成績信息;排列學生成績信息。2.3.1學生信息錄入模塊 主要功能是錄入學生的信息,具體操作是:先打開程序的主界面,輸入密碼,然后選擇數字1,即可錄入數據,程序依次輸出:學生姓名、學生學號、學生的出生年份以及各科成績等,確認后按任意鍵退出。2.3.2學生信息查找模塊 主要功能是查找用戶所需要的學生信息,直
9、接選擇數字4,便可根據學生的姓名、學號可以查詢到相關成績,2.3.3學生信息顯示模塊 主要功能是顯示學生的相關信息,直接選擇數字2,便可顯示相關學生的信息(包括學號、姓名、年齡以及各科成績)第三章 系統模塊功能介紹3.1 功能模塊“學生成績管理系統”包括六個模塊:增加學生成績、顯示學生成績、排序統計成績、查找學生成績、刪除學生成績、修改學生信息。這六個模塊既相互聯系又相互獨立。3.1.1登錄界面 如圖3-1-1所示圖3-1-13.1.2增加學生成績模塊:主要功能用來對學生的成績進行收集和對年齡和學號的收集,以便于統計信息及增加學生成績信息界面的可觀度。老師可以通過填寫表格的形式,輸入成績等相關
10、信息,系統可以自動避免重復信息。 如圖3-2-2所示圖2-3-23.1.3顯示學生成績模塊:主要功能便于大家對成績 出生年份、學號進行查詢處理。顯示學生成績信息界面 如圖3-1-3所示圖3-1-33.1.4排序統計成績模塊:主要功能用來對學生的成績進行排序,使教師了解學生的近期學習狀況排列系統成績信息界面,如圖3-1-4所示圖3-1-43.1.5查找學生成績模塊:主要功能用來對學生的成績方便快捷的進行查詢,可以通過學號和姓名進行查詢。查找學生成績信息界面 如圖3-1-5所示圖3-1-53.1.6刪除學生成績模塊:主要功能用來對學生的成績進行刪除,老師可以對數據進行刪除,系統能夠通過老師給出的條
11、件查找出要刪除信息,并提示是否確定刪除,刪除后該信息將從數據庫消失。刪除學生成績信息界面 如圖2-3-5所示3.1.7修改學生信息模塊:主要功能用來對學生的一些信息進行修改。老師可以對數據庫中的一些信息進行修改,系統能夠通過老師給出的條件查找出所要修改的信息。修改后自動保存,并自動查找是否是重復信息。修改學生信息模塊界面如圖3-1-7所示第四章 課程設計總結2011年12月5日至2010年12月9日一周,按照教學計劃和學院的安排,在教室進行了10級計算機應用技術專業c+語言程序設計課程設計的實訓周。c+語言程序設計的課程設計,使學生能將學到的c+語言程序設計思想用到具體的工作和學習中,加深對類
12、與對象的理解,是將計算機課程與實際問題相聯接的關鍵步驟。通過課程設計,能夠提高學生分析問題、解決問題,從而運用所學知識解決實際問題的能力,因而必須給予足夠的重視。整個課程設計分為分組、編程及調試、程序測試及檢查、提交課程設計報告四個階段來完成。1、分組及準備階段:此階段將學生分成若干小組,每小組選擇好設計模塊,然后由學生自主進行問題分析和相關資料查詢,通過問題分析、概要設計、詳細設計、用戶界面設計、編碼、測試等一系列過程,培養學生動手實踐、協作開發項目的能力,為后續專業技能的訓練提供基礎;2、編程及程序調試階段:此階段學生集中上機進行,對于學生出現的問題,老師及時幫助學生解決,取得了很好的效果
13、。同時為了保證每位同學的課程設計效果,每次課堂都會點名,并納入學生的平時成績,該成績占總成績的30%;3、程序測試及檢查階段:此階段由老師對每位學生的設計結果作測試和檢查,并根據測試及檢查結果評定學生成績,此成績占課程設計總成績的40%。檢查的方法以學生答辯的方式進行,針對學生的課設提問有針對性的問題,根據回答問題的情況和課程設計的復雜度給定成績;由于學生成績管理系統的功能十分強大,程序的編寫也十分的復雜,所以我們七個人一組,每人完成一部分程序.程序的編寫是一項困難的任務,完成此程序必需運用書中的大部分知識,而且要有清晰的思路,有較強的語言組織能力.由于七人各完成一部分,所以最后七部分程序要能
14、銜接得十分完整,所以七個人要在編寫自己的程序的基礎上考慮其他人的程序結構.編寫程序就是一項十分困難的事,所以一定要細心,不能有一絲的馬虎,否則會前功盡棄.三是程序的檢查和系統的調用.程序寫完后并不能保證它一定能運行,所以要對它進行調試,發現其中的弊端,并作出相應的修改,以完善程序,使其邏輯性,運算能力都符合題目要求,使學生成績管理系統的運行能力達到課程的目的.這也體現了我們7個人的團隊合作能力!課程設計中體現出新時代大學生思維,理論方法結合實際應用能力的進步,也證明我系課程實踐環節的點滴進步。主要有以下幾點特色:1.本課程設計采取分組合作模式,這樣可以增加同學們的協同能力,為以后融入單位合作工
15、作模式打下良好的基礎。此外課程設計的選題模式采取抽簽模式這樣以來加強了隨機性,增加量趣味性;2.本課程設計的選課題庫更加貼近于我們的生活,激發學生觀察生活,體驗生活的能力。讓同學有所想,有所做,同時增加量軟件的應用性能;3本課程設計在一定的持續時間內,有明確的任務書,實行任務到人制度。使同學有事可做,也充分體驗了“趕工期”的生活;4.本課程設計在撰寫實踐報告環節上,更是高標準、嚴要求。老師專門找出時間為同學講解報告的書寫細節,并且為同學制作模板以供參考。為日后撰寫畢業設計報告等打下良好的基礎。我希望在下一次課程設計中我們會有更大的進步,我也會努力改進存在的問題,使我們的課程設計更具有特色。通過
16、本次的c+課程設計,讓我們學會了把書本上的知識應用到了實際中來。雖然在這一周中有過挫折和坎坷,有的問題一直到了最后才被解決,但是我認為這未必就不是好事,這樣能鍛煉我們的意志,磨練我們的耐心,失敗是成功之母,這話一點都沒錯,沒有失敗就沒有成功。讓我們沒有失去信心的是關懷我們的老師,當我們有了問題和疑問,老師就很耐心的給予講解,讓我們有了一個良好的學習氛圍。經過為期一周的緊張的上機編程學習,每位同學的設計題目都達到了理想的效果,使學生對數據結構課程所學的知識有了更深入的理解和掌握,鞏固了理論教學所學到的知識,擴展了學生編程思想,取得了預期的效果。由于水平有限及所學知識無限,在課程設計中難免有不少錯
17、誤和不足之處,還請老師批評指正。致 謝c+課程設計是對我們對這一個學期所學知識運用能力的一次全面的考核,也是對我們進行基本功的訓練,培養我們綜合運用所學知識獨立地分析問題和解決問題的能力,為以后撰寫畢業論文和工作打下良好的基礎。在本次設計中,我得到吳濤老師的悉心指導,另外也是和本設計小組其他設計人員的大力支持才得以完成。緊張而又辛苦的一周課程設計結束啦。在我們快要完成老師給我們下達任務的時候,我們設計小組仿佛經歷一次翻山越嶺,登上了高山之巔,頓時心曠神怡,眼前豁然開朗。課程設計是我們專業課程知識綜合應用的實踐訓練,這是我們邁向社會、從事職業工作前一個必不可少的過程。“千里之行始于足下”,通過這
18、次畢業設計我們深深體會到這句千古名言的真正含義。我們今天認真的進行課程設計,學會腳踏實地的邁開這一步,就是為了明天能穩健地在社會大潮中奔跑打下堅實的基礎。說實話,課程設計真的是有點累。然而,當我們著手清理自己的設計資料,檢查程序,得出的這個程序,仔細回味這一周的心路歷程,一種少有的成功喜悅即刻使我們的倦意頓消。雖然這是我們剛學會走完的第一步,是我們人生中的小勝利,然而它令我感受到自己成熟了許多。我清楚的意識到做課程設計不是一件容易的事,但是我們更多的是一種收獲。通過此次課程設計我們深刻的感悟到:做設計是苦活但要細心;實踐動手做比空想強:合作精神的強大的;老師是很好的資源,要想他挖掘。成敗決定于
19、細節。老子說:“天下難事,必做于易;天下大事,必做于細”;我們做課程設計也需要這種精神,千里之堤毀于蟻穴,螞蟻的巢穴都將會導致千里的河堤崩潰,一點的不足也會使種鴿程序運行不出來。實踐是檢驗真理的唯一標準,只有經得起實踐檢驗的想法,意識才是正確的。俗語有所:眾人拾柴火焰高。我們做課程設計也需要發揮團隊的精神的作用。隊員之間互相合作,發揮相互的特長這樣會令程序設計工作順利完成而省很多時間和精力,達到事半功倍的效果。今天的企業管理強調的時團隊精神,不是個人主義,我們通過這次課程設計深刻了解到這一點,我們同學之間也得到很好的交流。老師是一本活書、是最好的利用資源,我們要不斷在他身上進行“開采”,獲取自
20、己的寶貴的知識。老師不會是都幫我們親手的去做好,他主要做的工作的引導指引我們、啟發我們。以他的話說就是:授之以魚不如授之以漁,親手幫你做好一次,那下次遇到同樣的問題,你們還是不會解決,那不是等于不教。我們要學會獨立思考,提高自己的學習能力。本次課程設計能夠順利完成,首先我要感謝我們c+老師吳老師,他不但教會我們專業方面的知識,在本次課程設計中給與我們大力支持和幫助的,每有問題,老師總是耐心的解答,使我能夠充滿熱情的投入到課程設計中去;還要感謝我們這個團隊的同學們,是我們7個人的齊心協力才完成此次課程設計。最后還要感謝相關資料的編著者和給予我們支持的社會各界人士,感謝您們為我們提供一個良好的環境
21、,使本次課程設計圓滿完成。參考文獻1. 鄭莉,董淵,張瑞豐等編著.c+語言程序設計(第3版).北京:清華大學出版社,2009.2. 關治.陳景良.數值計算.北京:清華大學出版社,19933. 洪永清,黃德才,呂麗民.面向對象建模與設計.北京:人民郵電出版社,19984. 邵維忠,楊芙清.面向對象的系統分析.北京:清華大學出版社,19985. 譚浩強.c程序設計.北京:清華大學出版社,19916. 張國峰.c+語言及其程序設計教程.北京:電子工業出版社,19977. 侯捷.stl源碼剖析.武漢:華中科技大學出版社,20028. 三味創作室.visual c+ 6.0 應用與提高.北京:科學出版社
22、,19999. 和克智.c+程序設計(第2版).西安:西安交通大學出版社,199910. 徐士良.c常用算法程序集.北京:清華大學出版社,199511. 附錄:源程序代碼# include # include # include # include int code();/登錄密碼using namespace std;/ student類class studentpublic:char name20;char id20;int date; /學生出生日期int age; /學生年齡int cnum; /c+課程得分int mnum; /數學課程得分int enum; /英語課程得分int s
23、um; /總分 student * next;void input()coutname;coutid; coutdate;coutcnum;coutmnum;coutenum;sum=cnum+mnum+enum;age=2011-date;void readfile(istream & in)innameiddateagecnummnumenumsum;void show()cout姓名:nameendl學號:idendl出生日期:dateendl年齡:ageendlc+:cnumendl數學:mnumendl外語:enumendl總成績:sumendlendlnext;p!=end;p=p
24、-next)p-show();coutinput(); end-next=new student; end=end-next; cout添加成功!endl; coutnext!=end;p=p-next)if(!strcmp(p-next-name,name)ai=p;i+;if(i=0)return 0;else ai=end;return i;student *findid(char * id)for(student * p=head;p-next!=end;p=p-next)if(!strcmp(p-next-id,id)return p;return null;int code()in
25、t i=0,j=0; int c; char name15,cod15; coutnn;while(j3)couttt管理員:;cin.getline(name,sizeof(name);/coutendl= 0)if (c = b)coutb b;i = i - 1; elsecout*;codi = c; c = getch();if(c != b)i = i + 1;codi = 0;coutendlendltt;if(strcmp(name, 1)=0)&(strcmp(cod, 111)=0)|(strcmp(name,2)=0)&(strcmp(cod,222)=0)cout登陸成
26、功!nn;j=4;break;else if(strcmp(name, *)=0)|(strcmp(name, *)=0)cout登陸失?。∶艽a錯誤!nn;else coutnext=new student; end=head-next; in.open(sort.txt); if(!in)couttt這是一個新系統,無學生信息。請先輸入。readfile(in);if(end-name0=0)break;end-next=new student; end=end-next;in.close();couttt讀取學生信息成功!next!=end;)temp=head-next;head-nex
27、t=head-next-next;delete temp;delete head,end;/菜單void studentmessage:showmenu() cout 學 生 成 績 管 理 系 統 endl; cout endl; cout 1.增加學生成績 endl; cout 2.顯示學生成績 endl; cout 3.排序統計成績 endl; cout 4.查找學生成績 endl; cout 5.刪除學生成績 endl; cout 6.修改學生信息 endl; cout 0.安全退出系統 endl;coutnttntt請選擇:;void studentmessage:find()cha
28、r name20 ,id10; int x,k; student * p=null,*a6; coutntt*n; couttt 1.按學生的姓名查找 ntt 2.按學生學號查找 ; coutx; switch(x)case 1:coutname;if(k=finditem(name,a)for(int i=0;ai!=end;i+)ai-next-show();cout輸入任意字符!繼續;getch();elsecouttt沒有找到該姓名的學生!nendl;cout輸入任意字符!繼續;getch();break;case 2:coutid;if(p=findid(id)p-next-show
29、();cout輸入任意字符!繼續;getch();elsecouttt沒有找到該學號的學生!nendl;cout輸入任意字符!繼續;getch();break;/修改信息void studentmessage:modifyitem() char name20;int k=0,te,t,x; student * p=null,* a6; coutntt*n; couttt 1.按學生的姓名查找 ntt 2.按學生學號查找 ; coutx; switch(x)case 1:coutname;/找到單個學生直接刪除if(te=finditem(name,a)if(te=1)a0-next-input
30、();cout修改成功!endl;cout輸入任意字符!繼續;getch();elsecouttt找到多個學生的信息!endl;/找到多個學生選擇刪除for(int i=0;ai!=end;i+)cout第i+1next-show();coutt;at-1-next-input();cout修改成功!endl;cout輸入任意字符!繼續;getch();elsecouttt沒有找到!endl;cout輸入任意字符!繼續;getch(); break;case 2:coutid;if(p=findid(id)p-next-input();cout修改成功!endl;cout輸入任意字符!繼續;g
31、etch();elsecouttt沒有找到!endl;cout輸入任意字符!繼續;getch(); break;/刪除信息void studentmessage:removeitem() char name20;int k=0,te,x,t;student * p=null,*temp=null,*a6; coutntt*n; couttt 1.按學生的姓名刪除 ntt 2.按學生學號刪除 ; coutx; switch(x)case 1:coutname;if(te=finditem(name,a)if(te=1) /找到單個學生直接刪除temp=a0-next;a0-next=a0-nex
32、t-next; delete temp;couttt刪除成功!endl;cout輸入任意字符!繼續;getch();elsecouttt找到多個學生的信息!endl;/找到多個學生選擇刪除for(int i=0;ai!=end;i+)cout第i+1個:next-show();coutt;temp=at-1-next;at-1-next=at-1-next-next; delete temp;couttt刪除成功!endl;cout輸入任意字符!繼續;getch();elsecouttt沒有找到該學生!nendl;cout輸入任意字符!繼續;getch();break;case 2:coutid;if(p=findid(id)temp=p-next;p-next=p-next-next; delete temp;couttt刪除成功!endl;cout輸入任意字符!繼續;getch();elsecouttt沒有找到該學生!nendl;coutnext;p!=end;p=p-next)n+;return n;/對當前鏈表進行排序void studentmessage:sort() cout sorting.endl;student *p1=null,*
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 聘請顧問協議書
- 彩鋼瓦修復安全協議書
- 液化氣購銷合同協議書
- 現場建筑體變更協議書
- 學生碰牙齒調節協議書
- 理發店門店合同協議書
- 移動代理協議書
- 維修補漏協議書
- 電瓶購置協議書
- 資助建房協議書
- 期末易錯題型創新改編練習(專項練習)六年級下冊數學人教版
- 《橋梁工程概況介紹》課件
- 2025年四川成都道德與法制中考試卷(無)
- 2024年不動產登記代理人《地籍調查》考試題庫大全(含真題、典型題)
- 中醫基礎學題庫(附答案)
- 大學美育知到智慧樹章節測試課后答案2024年秋長春工業大學
- 2024年秋《MySQL數據庫應用》形考 實驗訓練1 在MySQL中創建數據庫和表答案
- 《數據資產會計》 課件 第五章 數據資產的價值評估
- 合同到期不續簽的模板
- 北京市2018年中考歷史真題試卷(含答案)
- (完整版)新概念英語第一冊單詞表(打印版)
評論
0/150
提交評論