版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p><b> 摘要</b></p><p> 通過(guò)課程設(shè)計(jì),讓我對(duì)C語(yǔ)言有了更深的理解,讓我們把學(xué)到的理論應(yīng)用于具體實(shí)踐中,鍛煉了我們各方面的能力,從而讓我們更快提高。通過(guò)一些簡(jiǎn)單函數(shù)的疊加構(gòu)成了功能比較完備的學(xué)生成績(jī)管理系統(tǒng),從輸入到處理再到輸出,你將體會(huì)到完美的真正含義。</p><p> 學(xué)生成績(jī)管理系統(tǒng)具有以下簡(jiǎn)單功能: <
2、/p><p> 1.從鍵盤(pán)輸入包括學(xué)號(hào)、姓名、各門(mén)課程成績(jī)(不少于2門(mén)),并將其保存在磁盤(pán)文件里 </p><p> 2.打開(kāi)文件后,計(jì)算每個(gè)人的總分,排序并保存 3.具有在文件中進(jìn)行單項(xiàng)查詢(xún)或多項(xiàng)查詢(xún)的功能(即能夠按照給定的關(guān)鍵字,如姓名等找出滿(mǎn)足條件的紀(jì)錄) </p><p> 4.具有輸出文件數(shù)據(jù)信息的功能。</p>
3、<p> 關(guān)鍵字:成績(jī)錄入,成績(jī)查詢(xún),成績(jī)統(tǒng)計(jì)。</p><p><b> 目錄</b></p><p> 一.系統(tǒng)軟件環(huán)境:1</p><p> 二.課程設(shè)計(jì)題目: 學(xué)生成績(jī)管理系統(tǒng)1</p><p> 三、課程設(shè)計(jì)目的:1</p><p><b> 四
4、、程序說(shuō)明:1</b></p><p><b> 4.1、主菜單1</b></p><p> 4.2、各菜單項(xiàng)功能2</p><p> 4.2.1、成績(jī)錄入:2</p><p> 4.2.2、成績(jī)查詢(xún):2</p><p> 4.2.3、績(jī)統(tǒng)計(jì):2</p>
5、;<p> 4.2.4退出系統(tǒng)2</p><p> 五、課程設(shè)計(jì)的基本要求3</p><p> 六、數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)描述3</p><p> 七、各變量的定義和作用3</p><p> 八、系統(tǒng)各函數(shù)的功能、相互調(diào)用關(guān)系4</p><p> 8.1、函數(shù)實(shí)現(xiàn)功能說(shuō)明4</p>
6、;<p> 8.1.1、menu函數(shù)4</p><p> 8.1.2、input函數(shù)4</p><p> 8.1.3、select函數(shù)4</p><p> 8.1.4、statistics函數(shù)4</p><p> 8.2、相互調(diào)用關(guān)系:4</p><p> 九、學(xué)生成績(jī)管理系統(tǒng)的NS
7、流程圖4</p><p> 9.1、輸入函數(shù):4</p><p> 9.2、查詢(xún)函數(shù)5</p><p> 9.3、統(tǒng)計(jì)函數(shù)5</p><p> 9.4、菜單函數(shù):5</p><p> 9.5、主函數(shù):5</p><p><b> 十、程序剖析6</b&g
8、t;</p><p> 10.1、程序主菜單6</p><p> 10.2、成績(jī)錄入菜單:7</p><p> 10.3、成績(jī)查詢(xún)菜單:7</p><p> 10.4、成績(jī)統(tǒng)計(jì)菜單:8</p><p> 10.5、退出菜單:9</p><p> 十一、課程設(shè)計(jì)過(guò)程中遇到的問(wèn)
9、題及解決過(guò)程9</p><p> 十二、心得與體會(huì):9</p><p> 十三、參考文獻(xiàn)10</p><p> 十四. 源程序10</p><p> 學(xué)生成績(jī)管理系統(tǒng)課程設(shè)計(jì)</p><p><b> 報(bào) 告</b></p><p><b>
10、一、系統(tǒng)軟件環(huán)境:</b></p><p> 本程序主要運(yùn)行在: Visual C++ 6.0</p><p> 二、課程設(shè)計(jì)題目: 學(xué)生成績(jī)管理系統(tǒng)</p><p><b> 三、課程設(shè)計(jì)目的:</b></p><p> 1、通過(guò)實(shí)訓(xùn),加深對(duì)C程序的理解,并且了解C語(yǔ)言在各領(lǐng)域中的應(yīng)用。</p
11、><p> 2、通過(guò)實(shí)訓(xùn),學(xué)會(huì)閱讀較復(fù)雜的C語(yǔ)言程序并學(xué)會(huì)分析程序。</p><p><b> 四、程序說(shuō)明:</b></p><p> 程序說(shuō)明:有N個(gè)學(xué)生,每個(gè)學(xué)生的數(shù)據(jù)包含學(xué)號(hào)(不重復(fù))、姓名、三門(mén)課的成績(jī)及平均成績(jī),試設(shè)計(jì)一學(xué)生成績(jī)管理系統(tǒng),使之能提供以下功能:</p><p><b> 4.1、主
12、菜單</b></p><p> 4.2、各菜單項(xiàng)功能</p><p> 4.2.1、成績(jī)錄入:</p><p> 輸入學(xué)生的學(xué)號(hào)、姓名及三門(mén)課的成績(jī);</p><p> 4.2.2、成績(jī)查詢(xún):</p><p> 按學(xué)號(hào)查詢(xún)學(xué)生記錄。</p><p> 4.2.3、績(jī)統(tǒng)計(jì):
13、</p><p> 計(jì)算學(xué)生的平均分;OK</p><p> 根據(jù)學(xué)生的平均分高低,對(duì)學(xué)生的數(shù)據(jù)進(jìn)行排序后輸出;</p><p> 4.2.4退出系統(tǒng):</p><p> 退出整個(gè)系統(tǒng)(即主菜單)。</p><p> 五、課程設(shè)計(jì)的基本要求</p><p> 設(shè)計(jì)步驟的規(guī)范不但可以培
14、養(yǎng)學(xué)生科學(xué)的工作方法和作風(fēng),而且還能有效地減少錯(cuò)誤,提高工作效率。因此必須嚴(yán)格執(zhí)行良好的實(shí)驗(yàn)步驟規(guī)范(包括上級(jí)操作規(guī)范)。本課程設(shè)計(jì)的基本步驟與要求是:</p><p> 1、閱讀程序,掌握C程序的語(yǔ)句格式。</p><p> 2、熟悉掌握函數(shù)的定義和調(diào)用過(guò)程。</p><p> 3、掌握結(jié)構(gòu)體數(shù)組的使用。</p><p> 4、掌握
15、數(shù)組中數(shù)據(jù)的排序方法。</p><p> 5、撰寫(xiě)課程設(shè)計(jì)報(bào)告。</p><p> 6、完成課程設(shè)計(jì)報(bào)告</p><p> 六、數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)描述</p><p> 七、各變量的定義和作用</p><p> int num; /*定義學(xué)號(hào),變量為整型*/</p><p&g
16、t; char name; /*定義姓名,變量為字符型*/</p><p> int score; /*定義課程的成績(jī),變量為整型*/</p><p> float average; /*定義平均分,變量為浮點(diǎn)型*/</p><p> 八、系統(tǒng)各函數(shù)的功能、相互調(diào)用關(guān)系</p><p> 8.
17、1、函數(shù)實(shí)現(xiàn)功能說(shuō)明:</p><p> 8.1.1、menu函數(shù)</p><p> 是定義一個(gè)菜單函數(shù),其功能在于輸出菜單界面供使用者選擇。</p><p> 8.1.2、input函數(shù)</p><p> 是定義用于輸入學(xué)生信息。</p><p> 8.1.3、select函數(shù)</p><
18、;p> 是定義義用于查詢(xún)學(xué)生信息。包括學(xué)號(hào)、姓名及各科成績(jī)。</p><p> 8.1.4、statistics函數(shù)</p><p><b> 計(jì)算學(xué)生的平均分。</b></p><p> 根據(jù)學(xué)生的平均分高低,對(duì)學(xué)生的數(shù)據(jù)進(jìn)行排序后輸出。</p><p> 8.2、相互調(diào)用關(guān)系:</p>
19、<p> Main函數(shù)調(diào)用menu函數(shù)。</p><p> Menu函數(shù)可以調(diào)用input函數(shù)、select函數(shù)和statistics函數(shù)</p><p> 九、學(xué)生成績(jī)管理系統(tǒng)的NS流程圖</p><p><b> 9.1、輸入函數(shù):</b></p><p> 例如輸入: 1 王 90 80 75;
20、2 李 80 85 60;3 趙 65 75 90</p><p><b> 9.2、查詢(xún)函數(shù):</b></p><p><b> 9.3、統(tǒng)計(jì)函數(shù):</b></p><p><b> 9.4、菜單函數(shù):</b></p><p><b> 9.5、主函數(shù):&l
21、t;/b></p><p><b> 十、程序剖析</b></p><p> 10.1、程序主菜單</p><p> 10.2、成績(jī)錄入菜單:</p><p> 10.3、成績(jī)查詢(xún)菜單:</p><p> 10.4、成績(jī)統(tǒng)計(jì)菜單:</p><p> 10.
22、5、退出菜單:</p><p> 十一、課程設(shè)計(jì)過(guò)程中遇到的問(wèn)題及解決過(guò)程</p><p> 1、For(i=0;i>n;i++)經(jīng)常寫(xiě)成For(i=0,i>n,i++),導(dǎo)致運(yùn)行錯(cuò)誤。</p><p> 解決方法:編程時(shí)候需要仔細(xì)和耐心。</p><p> 2、對(duì)菜單切換的方法不了解,編寫(xiě)的程序運(yùn)行時(shí)候是一豎行向下排列,
23、很影響使用者的視覺(jué)范圍,通過(guò)搜索一些相關(guān)資料得知system("cls")的作用。</p><p> 3、對(duì)一些知識(shí)的不熟悉,導(dǎo)致剛開(kāi)始編程的時(shí)候很難下手。</p><p> 解決方法:重新掌握不熟悉的知識(shí)并收集相關(guān)資料。</p><p><b> 十二、心得與體會(huì):</b></p><p>
24、 一周的課程設(shè)計(jì)很快結(jié)束了,一開(kāi)始拿起題目時(shí)什么都不懂, 但通過(guò)這一個(gè)星期的實(shí)踐與努力,我發(fā)現(xiàn)我學(xué)會(huì)了很多,在解決問(wèn)題的時(shí)候覺(jué)得自己特別有成就感,覺(jué)得它很有趣,很想去做并希望能把它做得更好。在實(shí)踐的過(guò)程中我也發(fā)現(xiàn)我的c語(yǔ)言水平還有待提高。</p><p> 我發(fā)現(xiàn)這個(gè)學(xué)生成績(jī)管理系統(tǒng)還不夠完善,不能夠很好的運(yùn)用到實(shí)際生活中,例如,這個(gè)程序只能輸入部分人的成績(jī),而且,輸入錯(cuò)誤后無(wú)法對(duì)數(shù)據(jù)進(jìn)行修改。還有輸入的數(shù)據(jù)不
25、能夠永久保存,缺失了實(shí)用性。</p><p> 我認(rèn)為此程序還有待進(jìn)一步提高,希望能加上一個(gè)登陸程序,方便對(duì)數(shù)據(jù)的管理。</p><p> 綜上,我認(rèn)為我的編程水平還有待提高,在今后的學(xué)習(xí)中,要更加努力,有一天能夠解決以上程序存在的不足。</p><p><b> 十三、參考文獻(xiàn)</b></p><p><b
26、> 十四. 源程序</b></p><p> /* Note:Your choice is C IDE */</p><p> #include "stdio.h"</p><p> #include "stdlib.h"</p><p> #include "co
27、nio.h"</p><p> #define N 3</p><p> #define M 3</p><p> struct student</p><p><b> {</b></p><p><b> int num;</b></p>
28、<p> char name[20];</p><p> int score[3];</p><p> float average;</p><p><b> }stu[N];</b></p><p> void input();</p><p> void select(
29、);</p><p> void statistics();</p><p> void menu();</p><p> void input()</p><p><b> {</b></p><p><b> int i,j;</b></p>&l
30、t;p> printf("\n\t\t\t1、【成績(jī)錄入】\t\n\n");</p><p> printf("******************************************************************************\n");</p><p> for(i=0;i<N;i++)&l
31、t;/p><p><b> {</b></p><p> printf ("\n請(qǐng)輸入學(xué)號(hào): ");</p><p> scanf ("%d",&stu[i].num);</p><p> printf("請(qǐng)輸入姓名: ");</p>
32、<p> scanf ("%s",&stu[i].name); </p><p> for(j=0;j<M;j++)</p><p><b> {</b></p><p> printf ("第%d門(mén)成績(jī)分?jǐn)?shù)為: ",j+1);</p><p>
33、scanf ("%d",&stu[i].score[j]);</p><p><b> }</b></p><p> printf("\n\n");</p><p> printf("*************************************************
34、***************************\n");</p><p><b> }</b></p><p> printf("\n\n");</p><p> printf("輸入完畢!按任意鍵返回主菜單!");</p><p><b> g
35、etch();</b></p><p><b> }</b></p><p><b> /*查詢(xún)*/</b></p><p> void select(int no)</p><p><b> {</b></p><p><b&
36、gt; int i;</b></p><p> printf ("學(xué)生%d號(hào): \n",no);</p><p> printf ("學(xué)號(hào): %d\n",stu[no-1].num);</p><p> printf ("姓名: %s\n",stu[no-1].name);</p&
37、gt;<p> for (i=0;i<M;i++)</p><p><b> {</b></p><p> printf ("第%d門(mén)課程的成績(jī)分?jǐn)?shù)為: ",i+1);</p><p> printf ("%d\n",stu[no-1].score[i]);</p>
38、<p><b> }</b></p><p> printf("\n按任意鍵返回主菜單! ");</p><p><b> getch();</b></p><p><b> }</b></p><p><b> /*統(tǒng)計(jì)*
39、/</b></p><p> void statistics()</p><p><b> {</b></p><p> float temp=0;</p><p><b> int i=0;</b></p><p><b> int j=0;
40、</b></p><p><b> /*平均分*/</b></p><p><b> temp=0;</b></p><p> printf("\n\n\t\t\t3、〖 成績(jī)統(tǒng)計(jì)〗\n\n");</p><p> printf("╦╦╦╦╦╦╦╦╦
41、╦╦╦╦╦╦╦╦╦╦╦╦╦╦╦╦╦╦╦╦╦╦╦╦╦╦╦╦╦╦\n");</p><p> printf("╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩╩\n");</p><p> printf("\n學(xué)生成績(jī)平均分: ");</p><p> for (j=0;j<N;j
42、++)</p><p><b> {</b></p><p> for (i=0;i<M;i++)</p><p><b> {</b></p><p> temp=temp+stu[j].score[i];</p><p><b> }</b
43、></p><p> stu[j].average=temp/N;</p><p> printf("\n\t\t\t學(xué)生%s的成績(jī)平均成績(jī)?yōu)?",stu[j].name);</p><p> printf("%0.2f分",stu[j].average);</p><p><b>
44、; temp=0;</b></p><p><b> }</b></p><p> for(j=0;j<N;j++)</p><p> for(i=0;i<N-j-1;i++)</p><p> if(stu[i].average<stu[i+1].average)</p&g
45、t;<p><b> {</b></p><p> temp=stu[i].average;</p><p> stu[i].average=stu[i+1].average;</p><p> stu[i+1].average=temp;</p><p><b> }</b>
46、;</p><p> printf("\n\n學(xué)生平均成績(jī)前三名: ");</p><p> for(i=0;i<3;i++)</p><p><b> {</b></p><p> printf("\n\t\t\t第%d名,:\t\t %0.2f分",i+1,stu
47、[i].average);</p><p><b> }</b></p><p> printf("\n\n按任意鍵返回主菜單!");</p><p><b> getch();</b></p><p><b> }</b></p>&
48、lt;p> void menu()</p><p><b> {</b></p><p> int num=0;</p><p><b> int n=0;</b></p><p> printf("☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆
49、★☆★\n");</p><p> printf("\t\t\t╔══════════════╗ \n");</p><p> printf("\t\t\t║* 歡迎使用學(xué)生成績(jī)管理系統(tǒng) *║ \n");</p><p> printf("\t\t\t╚══════════════╝ \n"
50、);</p><p> printf("\t\t\t\t\t\t\t\t編譯員:羅遠(yuǎn)沁\(yùn)n");</p><p> printf("=>正在讀取系統(tǒng)信息.........\n");</p><p> printf("\n☆★☆★☆★☆★☆★☆★☆★☆★☆ 主菜單 ☆★☆★☆★☆★☆★☆★☆★☆★☆★☆\n
51、");</p><p> printf("\t\t\t╔═════╗\t\t╔═════╗\n ");</p><p> printf("\t\t\t║①成績(jī)錄入║\t\t║②成績(jī)查詢(xún)║\n");</p><p> printf("\t\t\t╚═════╝\t\t╚═════╝\n");&
52、lt;/p><p> printf("\t\t\t╔═════╗\t\t╔═════╗\n");</p><p> printf("\t\t\t║③成績(jī)統(tǒng)計(jì)║\t\t║④退出系統(tǒng)║\n");</p><p> printf("\t\t\t╚═════╝\t\t╚═════╝\n\n");</p>
53、;<p> printf("=>請(qǐng)選擇操作!\n》:");</p><p> scanf("%d",&num);</p><p> switch(num)</p><p><b> {</b></p><p><b> case 1:
54、</b></p><p> system("cls");</p><p><b> input();</b></p><p><b> break;</b></p><p><b> case 2:</b></p><
55、p> system("cls");</p><p> printf("\n\t\t\t2、『成績(jī)查詢(xún)』\n\n");</p><p> printf("━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━");</p><p> printf("※※※※※
56、※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※\n");</p><p> printf("━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\n\n");</p><p> printf("請(qǐng)輸入要查詢(xún)的學(xué)生號(hào)(1~3)\n\n=》: ");</p><p>
57、; scanf("%d",&n);</p><p> select(n);</p><p><b> break;</b></p><p><b> case 3:</b></p><p> system("cls");</p>
58、<p> statistics();</p><p><b> break;</b></p><p><b> case 4:</b></p><p><b> exit(0);</b></p><p><b> default:;</b&
59、gt;</p><p><b> }</b></p><p><b> }</b></p><p> void main()</p><p><b> {</b></p><p><b> while(1)</b><
60、/p><p><b> {</b></p><p> system("cls");</p><p><b> menu();</b></p><p><b> }</b></p><p><b> } <
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- c語(yǔ)言課程設(shè)計(jì)--學(xué)生成績(jī)管理系統(tǒng)
- c語(yǔ)言課程設(shè)計(jì)---學(xué)生成績(jī)管理系統(tǒng)
- c語(yǔ)言課程設(shè)計(jì)學(xué)生成績(jī)管理系統(tǒng)
- c語(yǔ)言課程設(shè)計(jì)-學(xué)生成績(jī)管理系統(tǒng)
- c語(yǔ)言課程設(shè)計(jì)----學(xué)生成績(jī)管理系統(tǒng)
- c語(yǔ)言課程設(shè)計(jì)學(xué)生成績(jī)管理系統(tǒng)
- c語(yǔ)言課程設(shè)計(jì)學(xué)生成績(jī)管理系統(tǒng)
- c語(yǔ)言課程設(shè)計(jì)-學(xué)生成績(jī)管理系統(tǒng)
- c語(yǔ)言課程設(shè)計(jì)-學(xué)生成績(jī)管理系統(tǒng)
- 學(xué)生成績(jī)管理系統(tǒng)--c語(yǔ)言課程設(shè)計(jì)
- c語(yǔ)言課程設(shè)計(jì)--學(xué)生成績(jī)管理系統(tǒng)
- c語(yǔ)言課程設(shè)計(jì)--學(xué)生成績(jī)管理系統(tǒng)
- c語(yǔ)言課程設(shè)計(jì)---學(xué)生成績(jī)管理系統(tǒng)
- c語(yǔ)言課程設(shè)計(jì)-學(xué)生成績(jī)管理系統(tǒng)
- c語(yǔ)言課程設(shè)計(jì)———學(xué)生成績(jī)管理系統(tǒng)
- c語(yǔ)言課程設(shè)計(jì)學(xué)生成績(jī)管理系統(tǒng)
- c語(yǔ)言課程設(shè)計(jì)---學(xué)生成績(jī)管理系統(tǒng)
- c語(yǔ)言課程設(shè)計(jì)_學(xué)生成績(jī)管理系統(tǒng)
- c語(yǔ)言課程設(shè)計(jì)學(xué)生成績(jī)管理系統(tǒng)設(shè)計(jì)
- c語(yǔ)言課程設(shè)計(jì)--學(xué)生成績(jī)管理
評(píng)論
0/150
提交評(píng)論