版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、<p> 課 程 設(shè) 計(jì) 報(bào) 告</p><p> 課程名稱 C語言程序設(shè)計(jì) </p><p> 課題名稱 學(xué)生成績管理系統(tǒng) </p><p> 課 程 設(shè) 計(jì) 任 務(wù) 書</p><p> 一、設(shè)計(jì)內(nèi)容與設(shè)計(jì)要求</p><p><b> 1.設(shè)
2、計(jì)內(nèi)容:</b></p><p><b> ?、艈栴}描述:</b></p><p> 對一個(gè)有N個(gè)學(xué)生的班級,每個(gè)學(xué)生有M門課程。該系統(tǒng)實(shí)現(xiàn)對班級成績的錄入、顯示、修改、排序、保存等操作的管理。</p><p><b> ?、乒δ芤螅?lt;/b></p><p> ①、本系統(tǒng)采用一個(gè)結(jié)
3、構(gòu)體數(shù)組,每個(gè)數(shù)據(jù)的結(jié)構(gòu)應(yīng)當(dāng)包括:學(xué)號、姓名、M門課程名稱。</p><p> ?、?、本系統(tǒng)顯示這樣的菜單:</p><p><b> 請選擇系統(tǒng)功能項(xiàng):</b></p><p><b> 成績錄入</b></p><p><b> 成績顯示</b></p>
4、<p><b> 成績保存</b></p><p><b> 成績排序</b></p><p> 成績修改(要求先輸入密碼)</p><p><b> 成績統(tǒng)計(jì)</b></p><p> ?、?、顯示每門課程成績最高的學(xué)生的基本信息</p>&l
5、t;p> Ⅱ、顯示每門課程的平均成績</p><p><b> 退出系統(tǒng)</b></p><p> ③、執(zhí)行一個(gè)具體的功能之后,程序?qū)⒅匦嘛@示菜單。</p><p> ?、堋W(xué)生成績保存到文件中。</p><p><b> ?、撬惴ㄌ崾荆?lt;/b></p><p>
6、; ①、數(shù)據(jù)結(jié)構(gòu):結(jié)構(gòu)體類型數(shù)組。</p><p> ?、?、數(shù)據(jù)庫結(jié)構(gòu):下表構(gòu)成該系統(tǒng)的基本數(shù)據(jù)庫。 </p><p><b> ?、葴y試數(shù)據(jù):</b></p><p><b> 學(xué)生人數(shù)N=10</b></p><p><b> 課程門數(shù)M=4</b><
7、/p><p> 課程名:數(shù)學(xué)、語文、英語、政治</p><p><b> ?、善渌?lt;/b></p><p> 對該系統(tǒng)有興趣的同學(xué)可以在實(shí)現(xiàn)上述基本功能后,完善系統(tǒng)的其它功能。</p><p><b> 2.設(shè)計(jì)要求:</b></p><p> 1).設(shè)計(jì)正確,方案合理。
8、</p><p> 2).界面友好,使用方便。</p><p> 3).程序精煉,結(jié)構(gòu)清晰。</p><p> 4).設(shè)計(jì)報(bào)告5000字以上,含程序設(shè)計(jì)說明、系統(tǒng)的功能框圖、流程圖、源程序清單等。</p><p> 5).實(shí)際操作過程中遇到的問題及解決方法:設(shè)計(jì)總結(jié)及心得體會.</p><p><b>
9、; 6).上機(jī)演示。</b></p><p><b> 3.分組及安排</b></p><p> 所選題目根據(jù)學(xué)生學(xué)號確定,學(xué)號模4加1,即(學(xué)號%4+1)。如你的學(xué)號為17,則所選題目號為:17%4+1==(題目2)。</p><p><b> 4.成績評定</b></p><p&
10、gt; 程序設(shè)計(jì)方案是否合理;程序設(shè)計(jì)是否正確;調(diào)試結(jié)果;設(shè)計(jì)說明書的質(zhì)量高低;答辯時(shí)回答問題情況;課程設(shè)計(jì)周表現(xiàn)情況;總評成績記入“課程設(shè)計(jì)成績評分表”。</p><p><b> 二、進(jìn)度安排</b></p><p> 第 18 周星期一星期二星期五 08:00——12:00</p><p><b> 星期一 上午<
11、;/b></p><p> 熟悉這次課程設(shè)計(jì)的目的和課程設(shè)計(jì)的要求,通過圖書館或因特網(wǎng)查找與幀封裝課題相關(guān)的資料,明確了解一些要用到的文件和調(diào)用函數(shù)等。機(jī)房上機(jī),在計(jì)算機(jī)上編輯源程序。</p><p><b> 星期二 上午</b></p><p> 調(diào)試程序,在改正錯(cuò)誤的同時(shí)不斷完善程序,使源代碼滿足課程設(shè)計(jì)的要求和實(shí)現(xiàn)課程設(shè)計(jì)的
12、基本功能。</p><p><b> 星期三 上午</b></p><p> 繼續(xù)修改、編輯、調(diào)試程序。不斷改正錯(cuò)誤后,要保證程序能成功編譯成目標(biāo)文件,鏈接成功成為可執(zhí)行文件,再運(yùn)行能顯示出“幀封裝已完成”的信息,這樣才能算已經(jīng)完成了本課題的基本功能。</p><p><b> 星期五 上午</b></p>
13、;<p> 進(jìn)一步完善程序并運(yùn)行演示,完成課程設(shè)計(jì)答辯, </p><p><b> 星期六</b></p><p> 畫出流程圖,書寫程序報(bào)告,對整個(gè)程序流程與算法進(jìn)行解釋并寫出總結(jié)。完成并打印課程設(shè)計(jì)報(bào)告。</p><p><b> 目錄</b></p><p> 一、課
14、題的主要功能5</p><p> 二、課題的功能模塊的劃分6</p><p> 頭文件(xscj.h)6</p><p> 主函數(shù)(int main())6</p><p> 創(chuàng)建鏈表 (struct student * creatlb())7</p><p> 信息保存(void baocun(
15、struct student * head))9</p><p> 成績錄入(void cjlr(struct student * head))10</p><p> 成績顯示(void cjxs())11</p><p> 成績修改(void cjxg())11</p><p> 成績排序(void cjpx())12&l
16、t;/p><p> 三.程序模塊截圖13</p><p> 四.總結(jié)及參考資料15</p><p><b> 附錄:16</b></p><p><b> 一、課題的主要功能</b></p><p> 對學(xué)生信息(包括學(xué)號、語文、數(shù)學(xué)、英語、平均分)進(jìn)行管理,包括
17、學(xué)生成績的信息輸入、輸出、查詢、刪除、排序、統(tǒng)計(jì)、退出.將學(xué)生的成績信息進(jìn)行記錄,信息內(nèi)容包含:(1)學(xué)生的學(xué)號(2)學(xué)生的姓名(3)學(xué)生的成績。假設(shè),現(xiàn)收集到了一個(gè)班學(xué)生的所有成績信息,要求用C語言編寫一個(gè)簡單的成績管理系統(tǒng),可進(jìn)行錄入、查詢、修改和瀏覽等功能。學(xué)習(xí)相關(guān)開發(fā)工具和應(yīng)用軟件,熟悉系統(tǒng)建設(shè)過程。本系統(tǒng)實(shí)現(xiàn)以下功能:</p><p> 1、輸入初始的學(xué)生信息:輸入信息包括學(xué)生的姓名、學(xué)號以及學(xué)生的成
18、績等相關(guān)信息;可用函數(shù)void input(STUDENT *data, int *len)來實(shí)現(xiàn)此操作。 </p><p> 2、成績輸出模塊:輸出學(xué)生的信息以及成績,通過學(xué)生的姓名來查看學(xué)生的相關(guān)成績來輸出成績的平均分?jǐn)?shù)、最高和最低分?jǐn)?shù)。</p><p> 3、成績查詢模塊:可用void cjxs()來實(shí)現(xiàn)。找到就輸出此學(xué)生全部信息。</p><p>
19、4、排序模塊:用函數(shù)void cjpx()來實(shí)現(xiàn)</p><p> 5、統(tǒng)計(jì)功能能:用函數(shù)void cjtj()來實(shí)現(xiàn)</p><p> 6、退出系統(tǒng):可用一個(gè)函數(shù)exit()來實(shí)現(xiàn),首先將信息保存到文件中,釋放動態(tài)創(chuàng)建的內(nèi)存空間,再退出此程序。</p><p><b> 如下圖:</b></p><p> 二
20、、課題的功能模塊的劃分</p><p> 頭文件(xscj.h)</p><p> 本模塊包括①在程序中所需函數(shù)頭文件的調(diào)用,如:“stdio.h”“stdlib.h”“string.h”“conio.h”等②結(jié)構(gòu)體的定義,即定義結(jié)構(gòu)體student中所要包含的成員,如:學(xué)生姓名、學(xué)號、各科成績等③子函數(shù)的預(yù)處理與聲明,如下文中所需調(diào)用與編寫的子函數(shù)“void cjlr()”“void
21、 cjxs()”“void cjbc()”“void cjxg()”等。本模塊名為“xscj.h”,包含在主函數(shù)模塊前的預(yù)處理命令中,即主函數(shù)中的“#include “xscj.h””,以供函數(shù)調(diào)用。</p><p> 主函數(shù)(int main())</p><p> 本模塊主要實(shí)現(xiàn)程序的界面設(shè)計(jì),如歡迎界面等。另外,本程序還包括了菜單的顯示和子函數(shù)的調(diào)用,起到鏈接起程序的各個(gè)模塊
22、的作用。在主界面中包括“輸入學(xué)生成績 顯示統(tǒng)計(jì)數(shù)據(jù) 查找學(xué)生成績 修改學(xué)生成績 刪除學(xué)生成績 插入學(xué)生成績 按平均分降序排列 顯示全部學(xué)生成績 退出本系統(tǒng)”等全部的功能選擇。這樣一是能使用戶對程序操作的流程更加清楚簡明,二是保證了用戶同時(shí)只能對一個(gè)文件進(jìn)行操作的系統(tǒng)要求,保證了系統(tǒng)不會發(fā)生打開文件紊亂或者出現(xiàn)致命錯(cuò)誤。菜單截圖</p><p> 創(chuàng)建鏈表 (struct Person * c
23、reatlb())</p><p> 本模塊主要實(shí)現(xiàn)對已保存數(shù)據(jù)文件的讀入,創(chuàng)立初始鏈表,以執(zhí)行成績顯示、成績排序、成績修改等功能指令。模塊算法流程如下:</p><p> 信息保存(void baocunXGSC(struct Person * head))</p><p> 在本模塊中將已進(jìn)行修改等操作的新鏈表信息,通過頭指針head進(jìn)行引入并保存。首先定
24、義結(jié)構(gòu)體指針p,使p=head,將p中信息寫入文件。接著執(zhí)行循環(huán)體判斷指針p是否為空,若不為空則繼續(xù)將指針p中的數(shù)據(jù)寫入文件,直到指針p指向空為止跳出循環(huán)。模塊流程圖如下:</p><p> 成績錄入(void cjlr(struct Person * head))</p><p> 本模塊實(shí)現(xiàn)對信息的輸入,將學(xué)生的姓名、學(xué)號、語文成績、數(shù)學(xué)成績和英語成績等信息輸入到結(jié)構(gòu)體變量中,并通
25、過指針建立鏈表。模塊具體流程如下:</p><p> 成績顯示(void cjxs())</p><p> 本模塊實(shí)現(xiàn)成績輸出功能。首先調(diào)用創(chuàng)建鏈表函數(shù),實(shí)現(xiàn)鏈表的初始化,將文件中保存的學(xué)生成績信息讀取到結(jié)構(gòu)體鏈表當(dāng)中,然后再對結(jié)構(gòu)體鏈表中的信息進(jìn)行逐個(gè)輸出。具體流程如下:</p><p> 成績修改(void cjxg())</p><p
26、> 本模塊實(shí)現(xiàn)成績錄入后的修改功能。首先調(diào)用創(chuàng)建鏈表函數(shù),得到已保存文件數(shù)據(jù),輸入需要修改的學(xué)生學(xué)號,找到信息相匹配的結(jié)構(gòu)體變量,對結(jié)構(gòu)體中各成員重新賦值。模塊流程如下:</p><p> 成績排序(void cjpx())</p><p> 本模塊實(shí)現(xiàn)成績排序功能。通過選擇排序法對各學(xué)生成績按照總分大小先后排序。首先調(diào)用創(chuàng)建鏈表函數(shù)creatlb,將文件中的數(shù)據(jù)進(jìn)行讀入。然后
27、用選擇排序法對鏈表中各數(shù)據(jù)進(jìn)行排序,最后顯示并保存鏈表數(shù)據(jù)到文件當(dāng)中。</p><p><b> 三.程序模塊截圖</b></p><p><b> 主菜單界面:</b></p><p><b> 成績錄入界面:</b></p><p><b> 成績顯示界面
28、:</b></p><p><b> 成績排序:</b></p><p><b> 成績修改:</b></p><p><b> 四.總結(jié)及參考資料</b></p><p> 通過該這個(gè)課程設(shè)計(jì),我們更加牢固的掌握了C語言的知識。并對于以前不熟悉的知識有了更
29、加深刻的了解。同時(shí),在完成此次課程設(shè)計(jì)的過程中,老師同學(xué)給了我們很多寶貴的建議和指點(diǎn),我們很感謝他們。雖然有些疲勞和困倦,但帶給我很多的收獲。C語言已經(jīng)學(xué)了一個(gè)學(xué)期了,有許多知識都存在似懂非懂的現(xiàn)象,這種現(xiàn)象通過實(shí)際的上機(jī)操作,已經(jīng)減少了許多。對這些知識也有了更深的理解和很好的掌握。也有很多理論上說得過去的代碼,但到了實(shí)際操作,卻是行不通的。這種困惑,有許多已經(jīng)通過實(shí)際操作解決了,并能夠深刻認(rèn)識,但也有很多沒有明白。只能避過這些方法,換
30、方法實(shí)現(xiàn)。在課程設(shè)計(jì)之前,因?yàn)橛辛司C合實(shí)驗(yàn)的經(jīng)驗(yàn)與教訓(xùn),明白了寫代碼這一步是非常重要的,因?yàn)楫?dāng)你把代碼輸入電腦,并用編譯器將其運(yùn)行,發(fā)現(xiàn)通過不了,再來檢查找出問題,這是一件非常辛苦的事情,也很浪費(fèi)時(shí)間。于是在課程設(shè)計(jì)的時(shí)候,我們花了幾星期的時(shí)間來規(guī)劃與寫代碼,將要實(shí)現(xiàn)的內(nèi)容分析清楚,才把代碼輸入電腦。我們覺得寫程序,應(yīng)該先找到該程序中的核心地方,用多種方法來實(shí)現(xiàn)該核心,這才可能避免等到發(fā)現(xiàn)邏輯上或者編譯器不支持上的錯(cuò)誤,才來想補(bǔ)救的措施
31、,這樣花費(fèi)時(shí)間在想補(bǔ)救措施是很不值得的</p><p><b> 參考文獻(xiàn)</b></p><p> [1] 譚浩強(qiáng),C程序設(shè)計(jì)(第二版)</p><p><b> 附錄:</b></p><p> 成績管理系統(tǒng)源代碼:</p><p> 頭文件(xscj.h)&l
32、t;/p><p> #include<stdio.h></p><p> #include<stdlib.h></p><p> #include<string.h></p><p> struct Person </p><p><b> {</b>&l
33、t;/p><p> char name[10];</p><p><b> int num;</b></p><p><b> int Math;</b></p><p> int Chinese;</p><p> int English;</p>&l
34、t;p> int Polity;</p><p> struct Person * next;</p><p><b> };</b></p><p> struct Person * creatlb();</p><p> void cjlr();</p><p> void
35、cjxs();</p><p> void cjbc();</p><p> void cjpx();</p><p> void cjxg();</p><p> void cjtj();</p><p> 主函數(shù)(xscj_main.c)</p><p> #include&qu
36、ot;xscj.h"</p><p> int main()</p><p> {int i=1;</p><p><b> while(i)</b></p><p><b> {</b></p><p><b> int x; </b&
37、gt;</p><p> system("cls");</p><p> printf(" **********************************\n");</p><p> printf(" ** 1、成績錄入 **\n&quo
38、t;);</p><p> printf(" ** 2、成績顯示 **\n");</p><p> printf(" ** 3、成績保存 **\n");</p><p> printf(" **
39、 4、成績排序 **\n");</p><p> printf(" ** 5、成績修改 **\n");</p><p> printf(" ** 6、成績統(tǒng)計(jì) **\n");</p><p>
40、 printf(" ** 7、退出系統(tǒng) **\n");</p><p> printf(" **********************************\n");</p><p> printf(" 請輸入您的選擇:");</p&
41、gt;<p> scanf("%d",&x);</p><p> switch(x) </p><p><b> {</b></p><p><b> case 1:</b></p><p> system("cls");&l
42、t;/p><p><b> cjlr();</b></p><p> system("cls");</p><p><b> break;</b></p><p><b> case 2:</b></p><p> system
43、("cls");</p><p><b> cjxs();</b></p><p><b> getch();</b></p><p> system("cls");</p><p><b> break;</b></p&g
44、t;<p><b> case 3:</b></p><p> system("cls");</p><p><b> cjbc();</b></p><p> system("cls");</p><p><b> brea
45、k;</b></p><p><b> case 4:</b></p><p> system("cls");</p><p><b> cjpx();</b></p><p> system("cls");</p><
46、p><b> break;</b></p><p><b> case 5:</b></p><p> system("cls");</p><p><b> cjxg();</b></p><p> system("cls&quo
47、t;);</p><p><b> break;</b></p><p><b> case 6:</b></p><p> system("cls");</p><p><b> cjtj();</b></p><p>&l
48、t;b> getch();</b></p><p> system("cls");</p><p><b> break;</b></p><p><b> case 7:</b></p><p><b> i=0;</b><
49、;/p><p><b> break;</b></p><p><b> }</b></p><p><b> }</b></p><p><b> }</b></p><p> 子函數(shù)模塊(xscj.c)</p>
50、<p> #include"xscj.h"</p><p> struct Person * creatlb()</p><p><b> {</b></p><p> FILE * fp;</p><p> struct Person student;</p>
51、<p> struct Person * head=NULL;</p><p> struct Person * p1;</p><p> struct Person * p2;</p><p> p2=&student;</p><p> if((fp=fopen("D:\\成績管理系統(tǒng).dat&quo
52、t;,"rb"))!=NULL)</p><p><b> {</b></p><p> if(!feof(fp))</p><p> {fread(&student,sizeof(struct Person),1,fp);</p><p> head=p1=p2=(struct Pe
53、rson *)malloc(sizeof(struct Person));</p><p> strcpy(p1->name,student.name);</p><p> p1->num=student.num;</p><p> p1->Math=student.Math;</p><p> p1->Chi
54、nese=student.Chinese;</p><p> p1->English=student.English;</p><p> p1->Polity=student.Polity;</p><p><b> }</b></p><p> while(!feof(fp))</p>
55、<p> {fread(&student,sizeof(struct Person),1,fp);</p><p> p1=(struct Person *)malloc(sizeof(struct Person));</p><p> strcpy(p1->name,student.name);</p><p> p1->n
56、um=student.num;</p><p> p1->Math=student.Math;</p><p> p1->Chinese=student.Chinese;</p><p> p1->English=student.English;</p><p> p1->Polity=student.Poli
57、ty;</p><p> p2->next=p1;</p><p><b> p2=p1;</b></p><p><b> }</b></p><p> p2->next=NULL;</p><p><b> p2=head;</b&g
58、t;</p><p> if(p2->next!=NULL)</p><p><b> {</b></p><p> while(p2->next->next!=NULL)</p><p><b> {</b></p><p> p2=p2->
59、;next;</p><p><b> }</b></p><p><b> }</b></p><p><b> else</b></p><p><b> {</b></p><p> head=NULL;</p
60、><p><b> }</b></p><p> p2->next=NULL;</p><p><b> }</b></p><p> return(head);</p><p><b> }</b></p><p>
61、 void baocunXGSC(struct Person * head)</p><p><b> {</b></p><p> FILE * fp;</p><p> struct Person student;</p><p> fp=fopen("D:\\成績管理系統(tǒng).dat",&
62、quot;w");</p><p> if(head!=NULL)</p><p><b> {</b></p><p> strcpy(student.name,head->name);</p><p> student.num=head->num;</p><p>
63、; student.Math=head->Math;</p><p> student.Chinese=head->Chinese;</p><p> student.English=head->English;</p><p> student.Polity=head->Polity;</p><p> f
64、write(&student,sizeof(struct Person),1,fp);</p><p> fclose(fp);</p><p> head=head->next;</p><p> while(head!=NULL)</p><p><b> {</b></p>&l
65、t;p> fp=fopen("D:\\成績管理系統(tǒng).dat","a");</p><p> strcpy(student.name,head->name);</p><p> student.num=head->num;</p><p> student.Math=head->Math;<
66、/p><p> student.Chinese=head->Chinese;</p><p> student.English=head->English;</p><p> student.Polity=head->Polity;</p><p> fwrite(&student,sizeof(struct P
67、erson),1,fp);</p><p> fclose(fp);</p><p> head=head->next;</p><p><b> }</b></p><p><b> }</b></p><p> fclose(fp);</p>
68、<p><b> }</b></p><p> void cjlr(struct Person * head)</p><p><b> {</b></p><p> struct Person student;</p><p> FILE * fp;</p>&
69、lt;p> char name[10];</p><p> int num,pd=1;</p><p><b> int Math;</b></p><p> int Chinese;</p><p> int English;</p><p> int Polity;</
70、p><p><b> while(pd)</b></p><p><b> {</b></p><p> fp=fopen("D:\\成績管理系統(tǒng).dat","ab");</p><p> printf("name: ");<
71、/p><p> fflush(stdin);</p><p> scanf("%s",&name);</p><p> printf("num:");</p><p> fflush(stdin);</p><p> scanf("%d",&
72、amp;num);</p><p> printf("Math:");</p><p> fflush(stdin);</p><p> scanf("%d",&Math);</p><p> printf("Chinese:");</p>&l
73、t;p> fflush(stdin);</p><p> scanf("%d",&Chinese);</p><p> printf("English:");</p><p> fflush(stdin);</p><p> scanf("%d",&
74、;English);</p><p> printf("Polity:");</p><p> fflush(stdin);</p><p> scanf("%d",&Polity);</p><p> printf("是否繼續(xù)輸入下一個(gè)學(xué)生的成績?按0返回/按其他鍵繼
75、續(xù)輸入: ");</p><p> fflush(stdin);</p><p> scanf("%d",&pd);</p><p> system("cls");</p><p> strcpy(student.name,name);</p><p>
76、 student.num=num;</p><p> student.Math=Math;</p><p> student.Chinese=Chinese;</p><p> student.English=English;</p><p> student.Polity=Polity;</p><p>
77、 fwrite(&student,sizeof(struct Person),1,fp);</p><p> fclose(fp);</p><p><b> }</b></p><p><b> }</b></p><p> void cjxs()</p><p
78、><b> {</b></p><p> struct Person * ptr;</p><p> ptr=creatlb();</p><p><b> do</b></p><p><b> {</b></p><p> prin
79、tf("name: %s\n",ptr->name);</p><p> printf("num: %d\n",ptr->num);</p><p> printf("Math: %d\n",ptr->Math);</p><p> printf("Chinese:
80、 %d\n",ptr->Chinese);</p><p> printf("English: %d\n",ptr->English);</p><p> printf(" Polity:%d\n",ptr->Polity);</p><p> printf("
81、\n");</p><p> ptr=ptr->next;</p><p><b> }</b></p><p> while(ptr!=NULL);</p><p> printf("已顯示完畢,請按任意鍵返回!\n");</p><p><b&
82、gt; getch();</b></p><p> system("cls");</p><p><b> }</b></p><p> void cjxs2(struct Person * ptr)</p><p><b> {</b></p>
83、<p><b> do</b></p><p><b> {</b></p><p> printf("name: %s\n",ptr->name);</p><p> printf("num: %d\n",ptr->num);</p>
84、;<p> printf("Math: %d\n",ptr->Math);</p><p> printf("Chinese: %d\n",ptr->Chinese);</p><p> printf("English: %d\n",ptr->English);</p>&
85、lt;p> printf(" Polity:%d\n",ptr->Polity);</p><p> printf(" 總分:%d\n",ptr->Math+ptr->Chinese+ptr->English+ptr->Polity);</p><p> printf(" \
86、n");</p><p> ptr=ptr->next;</p><p><b> }</b></p><p> while(ptr!=NULL);</p><p> printf("已顯示完畢,請按任意鍵返回!\n");</p><p><b&g
87、t; getch();</b></p><p> system("cls");</p><p><b> }</b></p><p> void cjbc()</p><p><b> {</b></p><p> printf(&
88、quot;已保存");</p><p><b> getch();</b></p><p><b> }</b></p><p> void cjpx()</p><p><b> {</b></p><p> struct Pers
89、on * ptr;</p><p> struct Person * ptrF;</p><p> struct Person * ptrF2;</p><p><b> int a,b;</b></p><p> struct Person zhihuan;</p><p> ptr=
90、creatlb();</p><p> if(ptr==NULL)</p><p><b> {</b></p><p> printf("\n\n\n\n\n\n\n\t\t\t!!!!!沒有相關(guān)數(shù)據(jù)記錄\n");</p><p> printf("\t\t\t\t按任意鍵返回&q
91、uot;);</p><p><b> getch();</b></p><p><b> }</b></p><p><b> else</b></p><p> {ptrF2=ptr;</p><p> while(ptrF2->n
92、ext!=NULL)</p><p><b> {</b></p><p> ptrF=ptrF2;</p><p> a=ptrF->Chinese+ptrF->Math+ptrF->English+ptrF->Polity;</p><p><b> do</b>
93、</p><p><b> {</b></p><p> ptrF=ptrF->next;</p><p> b=ptrF->Chinese+ptrF->Math+ptrF->English+ptrF->Polity;</p><p><b> if(a<b)<
94、/b></p><p><b> a=b;</b></p><p> }while(ptrF->next!=NULL);</p><p> ptrF=ptrF2;</p><p><b> do</b></p><p><b> {</b
95、></p><p> b=ptrF->Chinese+ptrF->Math+ptrF->English+ptrF->Polity;</p><p><b> if(a==b)</b></p><p> goto CJPX;</p><p> ptrF=ptrF->next;&l
96、t;/p><p> }while(ptrF->next!=NULL);</p><p><b> CJPX:</b></p><p> if(ptrF!=ptrF2)</p><p><b> {</b></p><p> strcpy(zhihuan.name,
97、ptrF2->name);</p><p> zhihuan.num=ptrF2->num;</p><p> zhihuan.Chinese=ptrF2->Chinese;</p><p> zhihuan.Math=ptrF2->Math;</p><p> zhihuan.English=ptrF2-&g
98、t;English;</p><p> zhihuan.Polity=ptrF2->Polity;</p><p> strcpy(ptrF2->name,ptrF->name);</p><p> ptrF2->num=ptrF->num;</p><p> ptrF2->Chinese=ptrF
99、->Chinese;</p><p> ptrF2->Math=ptrF->Math;</p><p> ptrF2->English=ptrF->English;</p><p> ptrF2->Polity=ptrF->Polity;</p><p> strcpy(ptrF->na
100、me,zhihuan.name);</p><p> ptrF->num=zhihuan.num;</p><p> ptrF->Chinese=zhihuan.Chinese;</p><p> ptrF->Math=zhihuan.Math;</p><p> ptrF->English=zhihuan.E
101、nglish;</p><p> ptrF->Polity=zhihuan.Polity;</p><p><b> }</b></p><p> ptrF2=ptrF2->next;</p><p><b> }</b></p><p> cjxs2(
102、ptr);</p><p><b> }</b></p><p><b> }</b></p><p> void cjxg()</p><p><b> {</b></p><p> int tuichu=1;</p><
103、p> while(tuichu)</p><p><b> {</b></p><p><b> int scid;</b></p><p> struct Person * ptr, * head,* ptrf;</p><p> system("cls");&
104、lt;/p><p><b> cjxs();</b></p><p> printf("請輸入要修改的學(xué)生的學(xué)號");</p><p> scanf("%d",&scid);</p><p> head=ptr=creatlb();</p><p&g
105、t; if(ptr!=NULL)</p><p><b> {</b></p><p> while(scid!=ptr->num)</p><p><b> {</b></p><p> ptr=ptr->next;</p><p><b>
106、 }</b></p><p><b> }</b></p><p> printf("Chinese");</p><p> scanf("%d",&ptr->Chinese);</p><p> printf("Math"
107、);</p><p> scanf("%d",&ptr->Math);</p><p> printf("English");</p><p> scanf("%d",&ptr->English);</p><p> printf("P
108、olity");</p><p> scanf("%d",&ptr->Polity);</p><p> baocunXGSC(head);</p><p> printf("是否繼續(xù)修改1/是0/否");</p><p> scanf("%d",&a
109、mp;tuichu);</p><p><b> }</b></p><p><b> }</b></p><p> void cjtj()</p><p><b> {</b></p><p><b> }</b><
溫馨提示
- 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 學(xué)生成績管理系統(tǒng)課程設(shè)計(jì)報(bào)告
- 課程設(shè)計(jì)報(bào)告-學(xué)生成績管理系統(tǒng)
- 學(xué)生成績管理系統(tǒng)課程設(shè)計(jì)報(bào)告
- 學(xué)生成績管理系統(tǒng)課程設(shè)計(jì)報(bào)告
- 課程設(shè)計(jì)報(bào)告--學(xué)生成績管理系統(tǒng)
- 課程設(shè)計(jì)報(bào)告---學(xué)生成績管理系統(tǒng)
- 學(xué)生成績管理系統(tǒng)課程設(shè)計(jì)報(bào)告
- 學(xué)生成績管理系統(tǒng)課程設(shè)計(jì)報(bào)告
- 學(xué)生成績管理系統(tǒng)課程設(shè)計(jì)報(bào)告
- 《學(xué)生成績管理系統(tǒng)》課程設(shè)計(jì)報(bào)告
- vb學(xué)生成績管理系統(tǒng)課程設(shè)計(jì)報(bào)告
- java課程設(shè)計(jì)報(bào)告---學(xué)生成績管理系統(tǒng)
- 學(xué)生成績管理系統(tǒng)課程設(shè)計(jì)報(bào)告 (2)
- java學(xué)生成績管理系統(tǒng)課程設(shè)計(jì)報(bào)告
- java學(xué)生成績管理系統(tǒng)課程設(shè)計(jì)報(bào)告
- 學(xué)生成績管理系統(tǒng)課程設(shè)計(jì)報(bào)告 (3)
- c課程設(shè)計(jì)報(bào)告--學(xué)生成績管理系統(tǒng)
- java學(xué)生成績管理系統(tǒng)課程設(shè)計(jì)報(bào)告
- 學(xué)生成績管理系統(tǒng)課程設(shè)計(jì)報(bào)告.doc
- vfp課程設(shè)計(jì)報(bào)告---學(xué)生成績管理系統(tǒng)
評論
0/150
提交評論