




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、.創(chuàng)新創(chuàng)業(yè)實(shí)踐報(bào)告*;一 實(shí)踐項(xiàng)目名稱學(xué)生成績管理系統(tǒng)二 實(shí)踐項(xiàng)目的目的鍛煉C語言編程能力和軟件組織設(shè)計(jì)能力三 項(xiàng)目用到的相關(guān)知識(shí)c語言C語言是一門通用計(jì)算機(jī)編程語言,應(yīng)用廣泛。C語言的設(shè)計(jì)目標(biāo)是提供一種能以簡易的方式編譯、處理低級(jí)存儲(chǔ)器、產(chǎn)生少量的機(jī)器碼以及不需要任何運(yùn)行環(huán)境支持便能運(yùn)行的編程語言。盡管C語言提供了許多低級(jí)處理的功能,但仍然保持著良好跨平臺(tái)的特性,以一個(gè)標(biāo)準(zhǔn)規(guī)格寫出的C語言程序可在許多電腦平臺(tái)上進(jìn)行編譯,甚至包含一些嵌入式處理器(單片機(jī)或稱MCU)以及超級(jí)電腦等作業(yè)平臺(tái)。指針使用指針來讀取數(shù)據(jù),在重復(fù)性操作的狀況下,可以明顯改善程序性能,例如在遍歷字符串,查取表格,控制表格及
2、樹狀結(jié)構(gòu)上。對(duì)指針進(jìn)行復(fù)制,之后再解引用指針以取出數(shù)據(jù),無論在時(shí)間或空間上,都比直接復(fù)制及訪問數(shù)據(jù)本身來的經(jīng)濟(jì)快速。指針的機(jī)制比較簡單,其功能可以被集中重新實(shí)現(xiàn)成更抽象化的引用數(shù)據(jù)形別。許多編程語言中都支持某種形式的指針,最著名的是C語言,但是有些編程語言對(duì)指針的運(yùn)用采取比較嚴(yán)格的限制,如Java一般避免用指針,改為使用引用。有兩種含義,一是作為數(shù)據(jù)類型,二是作為實(shí)體。指針作為實(shí)體,是一個(gè)用來保存一個(gè)內(nèi)存地址的計(jì)算機(jī)語言中的變量。指針一般出現(xiàn)在比較底層的程序設(shè)計(jì)語言中,如C語言。高層的語言如Java一般避免用指針,而是引用。指針作為數(shù)據(jù)類型,可以從一個(gè)函數(shù)類型、一個(gè)對(duì)象類型或者一個(gè)不完備類型中
3、導(dǎo)出。從中導(dǎo)出的數(shù)據(jù)類型稱之為被引用類型。指針類型描述了一種對(duì)象,其值為對(duì)被引用類型的實(shí)體的引用。C+標(biāo)準(zhǔn)中規(guī)定,“指針”概念不適用于成員指針(不包含指向靜態(tài)成員的指針)。C+標(biāo)準(zhǔn)規(guī)定,指針分為兩類:object pointer type:指向void或?qū)ο箢愋?,表示?duì)象在內(nèi)存中的字節(jié)地址或空指針。function pointer type:指代一個(gè)函數(shù)。數(shù)組所謂數(shù)組,就是相同數(shù)據(jù)類型的元素按一定順序排列的集合,就是把有限個(gè)類型相同的變量用一個(gè)名字命名,然后用編號(hào)區(qū)分他們的變量的集合,這個(gè)名字稱為數(shù)組名,編號(hào)稱為下標(biāo)。組成數(shù)組的各個(gè)變量稱為數(shù)組的分量,也稱為數(shù)組的元素,有時(shí)也稱為下標(biāo)變量。數(shù)組
4、是在程序設(shè)計(jì)中,為了處理方便, 把具有相同類型的若干變量按有序的形式組織起來的一種形式。這些按序排列的同類數(shù)據(jù)元素的集合稱為數(shù)組。結(jié)構(gòu)體在C語言中,結(jié)構(gòu)體指的是一種數(shù)據(jù)結(jié)構(gòu),是C語言中聚合數(shù)據(jù)類型的一類。結(jié)構(gòu)體可以被聲明為變量、指針或數(shù)組等,用以實(shí)現(xiàn)較復(fù)雜的數(shù)據(jù)結(jié)構(gòu)。結(jié)構(gòu)體同時(shí)也是一些元素的集合,這些元素稱為結(jié)構(gòu)體的成員,且這些成員可以為不同的類型,成員一般用名字訪問。變量變量來源于數(shù)學(xué),是計(jì)算機(jī)語言中能儲(chǔ)存計(jì)算結(jié)果或能表示值抽象概念。變量可以通過變量名訪問。在指令式語言中,變量通常是可變的;但在純函數(shù)式語言中,變量可能是不可變的。在一些語言中,變量可能被明確為是能表示可變狀態(tài)、具有存儲(chǔ)空間的
5、抽象;但另外一些語言可能使用其它概念(如C的對(duì)象)來指稱這種抽象,而不嚴(yán)格地定義“變量”的準(zhǔn)確外延。由于變量讓你能夠把程序中準(zhǔn)備使用的每一段數(shù)據(jù)都賦給一個(gè)簡短、易于記憶的名字,因此它們十分有用。變量可以保存程序運(yùn)行時(shí)用戶輸入的數(shù)據(jù)(如使用InputBox函數(shù)在屏幕上顯示一個(gè)對(duì)話框,然后把用戶鍵入的文本保存到變量中)、特定運(yùn)算的結(jié)果以及要在窗體上顯示的一段數(shù)據(jù)等。簡而言之,變量是用于跟蹤幾乎所有類型信息的簡單工具。變量聲明后沒有賦值的話 編譯器會(huì)自動(dòng)提示并賦予默認(rèn)值變量是一種使用方便的占位符,用于引用計(jì)算機(jī)內(nèi)存地址,該地址可以存儲(chǔ)Script運(yùn)行時(shí)可更改的程序信息。例如,可以創(chuàng)建一個(gè)名為Clic
6、k Count的變量來存儲(chǔ)用戶單擊Web頁面上某個(gè)對(duì)象的次數(shù)。使用變量并不需要了解變量在計(jì)算機(jī)內(nèi)存中的地址,只要通過變量名引用變量就可以查看或更改變量的值。在VB Script中只有一個(gè)基本數(shù)據(jù)類型,即Variant,因此所有變量的數(shù)據(jù)類型都是Variant。函數(shù)一個(gè)較大的程序一般應(yīng)分為若干個(gè)程序塊,每一個(gè)模塊用來實(shí)現(xiàn)一個(gè)特定的功能。所有的高級(jí)語言中都有子程序這個(gè)概念,用子程序?qū)崿F(xiàn)模塊的功能。在C語言中,子程序的作用是由一個(gè)主函數(shù)和若干個(gè)函數(shù)構(gòu)成。由主函數(shù)調(diào)用其他函數(shù),其他函數(shù)也可以互相調(diào)用。同一個(gè)函數(shù)可以被一個(gè)或多個(gè)函數(shù)調(diào)用任意多次。在程序設(shè)計(jì)中,常將一些常用的功能模塊編寫成函數(shù),放在函數(shù)庫
7、中供公共選用。要善于利用函數(shù),以減少重復(fù)編寫程序段的工作量。函數(shù)分為全局函數(shù)、全局靜態(tài)函數(shù);在類中還可以定義構(gòu)造函數(shù)、析構(gòu)函數(shù)、拷貝構(gòu)造函數(shù)、成員函數(shù)、友元函數(shù)、運(yùn)算符重載函數(shù)、內(nèi)聯(lián)函數(shù)等。函數(shù)的定義:返回類型 名字(形式參數(shù)表列)函數(shù)體語句 return 表達(dá)式;函數(shù)調(diào)用:名字(實(shí)際參數(shù)表列);四 軟件設(shè)計(jì)及流程圖進(jìn)入軟件時(shí)可看到如下界面:首次使用時(shí)選擇1(創(chuàng)建學(xué)生成績管理冊(cè)),輸入學(xué)生成績,輸入后會(huì)有提示保存和查看,輸入錯(cuò)誤字符也會(huì)有溫馨提示。創(chuàng)建完學(xué)生成績管理冊(cè)后,可以對(duì)原有的學(xué)生信息進(jìn)行添加刪除和相應(yīng)的修改。代碼分析:在主函數(shù)中,僅有兩個(gè)自定義函數(shù)(菜單顯示和選擇),這兩個(gè)函數(shù)也是對(duì)整
8、個(gè)程序的主流程。(menu();choose();)函數(shù) menu()用于顯示主菜單,具有清屏功能。函數(shù)choose()用于對(duì)主菜單的功能進(jìn)行選擇。若輸入錯(cuò)誤會(huì)有提示。函數(shù)input()這個(gè)函數(shù)是進(jìn)行用戶對(duì)學(xué)生成績的輸入,依次可輸入學(xué)號(hào)、姓名、年齡、C語言成績、代數(shù)成績,系統(tǒng)會(huì)自行計(jì)算總分。函數(shù)savescore()這個(gè)函數(shù)是對(duì)輸入信息的保存,程序默認(rèn)保存在D:/score.txt中,若保存不成功或無法打開,會(huì)有相應(yīng)的提示。特別注意:因?yàn)樵摮绦驎?huì)在D盤生成相應(yīng)文件,容易被360等殺毒軟件識(shí)別并攔截,運(yùn)行前請(qǐng)關(guān)閉殺毒軟件。函數(shù) loadscore()這個(gè)函數(shù)是對(duì)輸入信息的讀取,程序默認(rèn)讀取在D:
9、/score.txt中,若讀取不成功或無法打開,會(huì)有相應(yīng)的提示。函數(shù) choosec()這個(gè)函數(shù)是對(duì)學(xué)生列表信息的排序,排序分為按學(xué)號(hào)降序、按姓名降序、按總分由高到低、按c語言由高到低、按代數(shù)由高到低和回到主菜單。選擇不同的排序方法會(huì)進(jìn)入不同的子函數(shù)。函數(shù) number()該函數(shù)用于對(duì)學(xué)號(hào)排序的子函數(shù)。函數(shù) name()該函數(shù)用于對(duì)姓名排序的子函數(shù)。函數(shù) total()該函數(shù)用于對(duì)總分排序的子函數(shù)。函數(shù) score_C()該函數(shù)用于對(duì)C語言分?jǐn)?shù)排序的子函數(shù)。函數(shù) score_algebra()該函數(shù)用于對(duì)代數(shù)分?jǐn)?shù)排序的子函數(shù)。函數(shù) show()該函數(shù)可顯示所有學(xué)生信息。顯示后通過任意鍵返回主菜
10、單。函數(shù) chaxun()該函數(shù)可查詢相應(yīng)信息,是查詢函數(shù)的總目錄(學(xué)號(hào)、姓名、年齡)。函數(shù) personal()該函數(shù)可根據(jù)學(xué)生姓名進(jìn)行查詢相應(yīng)信息。若輸入錯(cuò)誤會(huì)有提示。函數(shù) add()該函數(shù)可添加新的學(xué)生信息。函數(shù) fix() 該函數(shù)可修改學(xué)生信息。若無法找到,會(huì)有相應(yīng)的提示。函數(shù) del()該函數(shù)可刪除舊的學(xué)生信息。若無法找到,會(huì)有相應(yīng)的提示。函數(shù) Exit()退出函數(shù),顯示制作組,并按任意鍵退出以下是總流程圖:總流程圖主流程圖五 軟件代碼第 23 頁 共 24 頁#include<stdio.h>#include<string.h>#include<std
11、lib.h>#include<conio.h>#define M 1/*定義結(jié)構(gòu)體變量*/typedef struct student int num; /學(xué)號(hào); char name30; /姓名; int age; /年齡 double score_C; /C語言的成績; double score_algebra; /代數(shù)的成績; double scoreAll; /總成績;MESSA;MESSA stu40;int S;/*typedef struct studentschar name20;char num15;float scoreM;float average;fl
12、oat total;MESSA;MESSA stu20;int S;*/*全局變量*/int ii=0;/*函數(shù)聲明*/void menu(void);void choose(void);void input(void);void savescore(void);void loadscore(void);void choosec(void);void average(void);void total(void);void name(void);void number(void);void show(void);void excellent(void);void passing(void);vo
13、id personal(void);void Exit();void score_C(void);void score_algebra(void);void number1(void);void add();void fix();void del();void chaxun();/*主函數(shù)調(diào)用*/int main() menu();choose();/*菜單系統(tǒng)*/void menu(void)system("CLS");printf("t*n");printf("t*。 歡迎使用這個(gè)成績管理系統(tǒng)。*n");printf("
14、t*n");printf("n");printf("t#n");printf("t# 創(chuàng)建學(xué)生成績管理冊(cè).1 #n");printf("t# 添加學(xué)生的信息.2 #n");printf("t# 刪除學(xué)生的信息.3 #n");printf("t# 修改學(xué)生的信息.4 #n");printf("t# 顯示所有學(xué)生的信息 .5 #n");printf("t# 搜索個(gè)人個(gè)門成績分?jǐn)?shù).6 #n");printf("t# 所有學(xué)
15、生信息的排序 .7 #n");printf("t# 離開.9 #n");printf("t#n");printf("nt請(qǐng)選擇:nt");/*菜單選擇*/void choose(void)int x,flag=0;while(flag=0)fflush(stdin);scanf("%d",&x);getchar();switch(x)case 1:input();savescore();loadscore();menu();choose();flag=1;break;case 2:add();in
16、put();savescore();loadscore();menu();choose();flag=1;break;case 3:del();savescore();loadscore();menu();choose();flag=1;break;case 4:fix();savescore();loadscore();menu();choose();flag=1;break;case 5:flag=1;number1();show();break;case 6:chaxun();flag=1;break;case 7:choosec();flag=1;break;case 9:Exit()
17、;flag=1;default:printf("t對(duì)不起,輸入有誤或該項(xiàng)服務(wù)未開通n");/*輸入學(xué)生成績*/void input(void)int flag=1,j,i;char k;float pp=0;for(;flag=1;ii+)printf("t請(qǐng)輸入第N.%hd個(gè)學(xué)生的成績信息:n",ii+1);fflush(stdin);puts("t學(xué)號(hào):");fflush(stdin);scanf("%d",&stuii.num);puts("t姓名:");fflush(stdin)
18、;gets();fflush(stdin);puts("t年齡:");fflush(stdin);scanf("%d",&stuii.age);fflush(stdin);puts("t分?jǐn)?shù):tC語言t代數(shù)");for(j=0;j<M;j+)scanf("%lf%lf",&stuii.score_C,&stuii.score_algebra);puts("t你想要繼續(xù)么?(Y/N)");while(1) puts("t請(qǐng)選擇."
19、;);fflush(stdin);scanf("%c",&k);if(k!='N'&&k!='Y')puts("t出錯(cuò)了,再輸一次 (>_<)!");else if(k='N')flag=0;S=ii;break;else break;for(i=0;i<=S;i+)for(j=0,stui.scoreAll=0.0;j<M;j+)stui.scoreAll=stui.score_algebra+stui.score_C;number1();/*保存數(shù)據(jù)*/v
20、oid savescore(void)int i,flag=1;FILE *fp;char m;puts("t你想要保存這些數(shù)據(jù)么?(Y/N)");while(1)fflush(stdin);scanf("%c",&m);if(m='Y')if(fp=fopen("D:score.txt","w")=NULL)printf("t對(duì)不起,無法打開這個(gè)表單.(+)狂暈n");exit(0);for(i=0;i<=S;i+)if(fwrite(&stui,size
21、of(struct student),1,fp)!=1)puts("t對(duì)不起,表單書寫錯(cuò)誤了!(+)狂暈");flag=0;if(flag=1)for(i=0;i<=S;i+)printf("t好了,第N.%d個(gè)學(xué)生的數(shù)據(jù)已經(jīng)被保存! (o)/n",i+1);fclose(fp);break;else if(m!='N'&&m!='Y')puts("t輸入錯(cuò)誤,請(qǐng)重新輸入! b");elsebreak;/*讀取文件中保存的數(shù)據(jù)*/void loadscore(void)FILE *
22、fp;char n;MESSA restu20;int i,flag=0;char read610="學(xué)號(hào)","姓名","年齡","c語言","代數(shù)","總分"puts("t你想要立刻讀取這些數(shù)據(jù)么?(Y/N)");while(1)fflush(stdin);scanf("%c",&n);if(n='Y')if(fp=fopen("D:score.txt","r")=NUL
23、L)fprintf(stderr,"tOpen %s error!n","score.txt");exit(0);for(i=0;i<=S;i+)fread(&restui,sizeof(struct student),1,fp);system("CLS");puts("t成績信息讀取中.");printf("t好的,表單已經(jīng)被讀取!.n");printf("n");printf("t$*$*$*$*$*$*$*$*$*$*$*$*$*$*$*$*$*
24、$*$*$*$*$*$*$n");printf("t$*$ tttttttt $*$nt");printf("$*$ ");for(i=0;i<6;i+)printf("%-10s",readi);printf(" $*$");printf("n");for(i=0;i<=S;i+)printf("t$*$ ");printf("%-10d%-10s",restui.num,);printf("%-10
25、d",restui.age);printf("%-10.1f",restui.score_C);printf("%-10.1f",restui.score_algebra);printf("%-10.1f",restui.scoreAll);printf(" $*$n");printf("t$*$ tttttttt $*$");printf("nt$*$*$*$*$*$*$*$*$*$*$*$*$*$*$*$*$*$*$*$*$*$*$*$n");fclose(fp
26、);break;else if(n='N')break;elseprintf("t對(duì)不起,出現(xiàn)錯(cuò)誤了,再來一次!n");puts("t輸入任意鍵回到主菜單.n");getchar();getchar();/*選擇查分的子菜單及子菜單選擇*/void choosec(void)int biao,i,flag=0;FILE *fp;if(fp=fopen("D:score.txt","r")=NULL)printf("t對(duì)不起,你無法輸入任何成績信息! 無法打開這個(gè)表單!nnn");
27、printf("t輸入任意鍵回到主菜單!n");getchar();getchar();menu();choose();for(i=0;i<=S;i+)fread(&stui,sizeof(struct student),1,fp);fclose(fp);system("CLS");printf("t以下是第二個(gè)菜單:n");printf("n");printf("t%$%$%$%$%$%$%$%$%$%$%$%$%$%$%$%$%$%$%$%$%$%$%$%$%$%$%$%$%$%$%$%
28、$n");printf("t%$ 按學(xué)號(hào)降序.1 %$n");printf("t%$ 按姓名降序.2 %$n");printf("t%$ 按總分由高到低.3 %$n");printf("t%$ 按c語言由高到低.4 %$n");printf("t%$ 按代數(shù)由高到低.5 %$n");printf("t%$ 回到主菜單.9 %$n");printf("t%$%$%$%$%$%$%$%$%$%$%$%$%$%$%$%$%$%$%$%$%$%$%$%$%$%$%
29、$%$%$%$%$%$n");printf("nt請(qǐng)選擇輸入方式:n");while(flag=0)fflush(stdin);scanf("%d",&biao);getchar();switch(biao)case 1:flag=1;number();show();break;case 2:flag=1;name();show();break;case 3:flag=1;total();show();break;case 4:flag=1;score_C();show();break;case 5:flag=1;score_algeb
30、ra();show();break;case 9:flag=1;menu();choose();break;default:printf("t對(duì)不起,操作無法進(jìn)行! 請(qǐng)重新做出正確操作!n");/*顯示分?jǐn)?shù)*/void show(void)int i,n,flag=0;char head710="學(xué)號(hào)","姓名","年齡","c語言","代數(shù)","總分"system("CLS");puts("t讀取信息中.");pr
31、intf("n");printf("t$*$*$*$*$*$*$*$*$*$*$*$*$*$*$*$*$*$*$*$*$*$*$*$nnt");for(i=0;i<7;i+)printf("%-10s",headi);printf("nt");for(i=0;i<=S;i+)/printf("%-10d%-10s",stui.num,);printf("%-10d",stui.age);printf("%-10.1f",stu
32、i.score_C);printf("%-10.1f",stui.score_algebra);printf("%-10.1f",stui.scoreAll);printf("nt");printf("nt$*$*$*$*$*$*$*$*$*$*$*$*$*$*$*$*$*$*$*$*$*$*$*$n");printf("nt請(qǐng)選擇:(1 or 2)nn");puts("t1.回到第二個(gè)菜單!n");puts("t2.回到主菜單!n");while(fla
33、g=0)fflush(stdin);scanf("%d",&n);getchar();switch(n) case 1:flag=1;choosec();break;case 2:flag=1;menu();choose();break;default:printf("t出錯(cuò)了,請(qǐng)?jiān)俅屋斎?n");/*按總分由高到低*/void total(void)int i,j,k;MESSA t;for(i=0;i<S;i+)k=i;for(j=i+1;j<=S;j+)if(stuk.scoreAll<stuj.scoreAll)k=j;
34、if(k!=i)t=stuk;stuk=stui;stui=t;/*按c語言由高到低*/void score_C(void)int i,j,k;MESSA t;for(i=0;i<S;i+)k=i;for(j=i+1;j<=S;j+)if(stuk.score_C<stuj.score_C)k=j;if(k!=i)t=stuk;stuk=stui;stui=t;/*按代數(shù)由高到低*/void score_algebra(void)int i,j,k;MESSA t;for(i=0;i<S;i+)k=i;for(j=i+1;j<=S;j+)if(stuk.score
35、_algebra<stuj.score_algebra)k=j;if(k!=i)t=stuk;stuk=stui;stui=t;/*按學(xué)號(hào)降序*/void number(void)int i,j,k;MESSA t;for(i=0;i<S;i+)k=i;for(j=i+1;j<=S;j+)if(stuk.num<stuj.num)k=j;if(k!=i)t=stuk;stuk=stui;stui=t;/*按學(xué)號(hào)升序*/void number1(void)int i,j,k;MESSA t;for(i=0;i<S;i+)k=i;for(j=i+1;j<=S;j
36、+)if(stuk.num>stuj.num)k=j;if(k!=i)t=stuk;stuk=stui;stui=t;/*按姓名降序*/void name(void)int i,j,k;MESSA t;for(i=0;i<S;i+)k=i;for(j=i+1;j<=S;j+)if(strcmp(,)<0)k=j;if(k!=i)t=stuk;stuk=stui;stui=t;/*個(gè)人學(xué)生成績查詢*/void personal(void)int i,f,w,flag=0;char b10,a;FILE *fp;char head3610
37、="學(xué)號(hào)","姓名","年齡","c語言","代數(shù)","總分"if(fp=fopen("D:score.txt","r")=NULL)printf("t對(duì)不起,無法輸入任何信息! 無法找到該表單!nnn");printf("t輸入任意鍵回到主菜單!n");getchar();getchar();menu();choose();for(i=0;i<=S;i+)fread(&stui,s
38、izeof(struct student),1,fp);fclose(fp);puts("t請(qǐng)輸入你想要搜索的學(xué)生成績信息:n");puts("t學(xué)生成績信息如下.n");for(i=0;i<=S;i+)printf("t%s",);puts("tnYour choose is :n");while(1)fflush(stdin);gets(b);for(i=0;i<=S;i+)if(strcmp(b,)=0)printf("t該生學(xué)生成績信息%s?(Y/N
39、)n",);f=i;fflush(stdin);scanf("%c",&a);if(a='Y')system("CLS");puts("t成績信息讀取中.");printf("n");printf("t*nnt");for(i=0;i<6;i+)printf("%-10s",head3i);printf("nt");printf("%-10d%-10s",stuf.num,stu
40、);printf("%-10d",stuf.age);printf("%-10.1f",stuf.score_C);printf("%-10.1f",stuf.score_algebra);printf("%-10.1f",stuf.scoreAll);printf("n");printf("t*n");break;elseprintf("t出錯(cuò)了,重新選擇吧!n");puts("t是否繼續(xù)操作?n");printf(&qu
41、ot;t1.離開系統(tǒng)!n");printf("t2.回到主菜單!n");printf("t3.回到第二個(gè)菜單!n");puts("t請(qǐng)選擇:n");while(flag=0)fflush(stdin);scanf("%d",&w);getchar();switch(w)case 1:Exit();flag=1;case 2:menu();choose();flag=1;break;case 3:choosec();flag=1;break;default:printf("t對(duì)不起,操作無
42、法進(jìn)行! 請(qǐng)重新選擇!n");/*添加*/void add()int i,a,f=1;m1:printf("t請(qǐng)輸入添加的學(xué)號(hào):n");scanf("%d",&a);f=1;for(i=0;i<ii;i+)if(stui.num=a)f=0;if(f=1)printf("tok,可添加");else if(f=0)printf("t已經(jīng)有啦,不可添加n");goto m1;/*修改*/void fix()int i,a,f=1,x;m1:printf("t請(qǐng)輸入修改的學(xué)號(hào):n&qu
43、ot;);scanf("%d",&a);f=1;for(i=0;i<ii;i+)if(stui.num=a)f=0;break;if(f=0)printf("tok,可修改n");printf("t請(qǐng)輸入修改內(nèi)容:nt1.名字t2.年齡t3.c語言分?jǐn)?shù)t4.代數(shù)分?jǐn)?shù)nt修改總分是不可以的啦ntt9.主菜單n");scanf("%d",&x);getchar();if(x=1)printf("t請(qǐng)輸入新的名字n");fflush(stdin);scanf("%s&q
44、uot;,&);fflush(stdin);if(x=2)printf("t請(qǐng)輸入新的年齡n");fflush(stdin);scanf("%d",&stui.age);fflush(stdin);if(x=3)printf("t請(qǐng)輸入新的c語言分?jǐn)?shù)n");fflush(stdin);scanf("%lf",&stui.score_C);fflush(stdin);if(x=4)printf("t請(qǐng)輸入新的代數(shù)分?jǐn)?shù)n");fflush(stdin);sc
45、anf("%lf",&stui.score_algebra);fflush(stdin);if(x=9)menu();else if(f=1)printf("t沒有數(shù)據(jù)啦,不可修改n");goto m1;/*刪除*/void del()int i,j,a,f=1,x;char c10;f=1;m2:printf("t請(qǐng)輸入刪除內(nèi)容:nt1.學(xué)號(hào)t2.名字ntt9.主菜單n");scanf("%d",&a);if(a=1)printf("t請(qǐng)輸入刪除的學(xué)號(hào)n");fflush(st
46、din);scanf("%d",&x);fflush(stdin);for(i=1;i<ii;i+)if(stui.num=x)f=0;break;if(f=0)for(j=i;j<ii;j+)stuj=stuj+1;printf("tok,已刪除n");ii-;else if(f=1)printf("t沒有數(shù)據(jù)啦,不可刪除n");goto m2;else if(a=2)printf("t請(qǐng)輸入刪除的名字n");fflush(stdin);gets(c);for(i=1;i<ii;i+)i
47、f(strcmp(,c)=0)f=0;break;if(f=0)for(j=i;j<ii;j+)stuj=stuj+1;printf("tok,已刪除n");ii-;else if(f=1)printf("t沒有數(shù)據(jù)啦,不可刪除n");goto m2;else if(a=9)menu();elseprintf("t輸入錯(cuò)誤,請(qǐng)重輸!n");goto m2;void chaxun()int a,d,i,flag=0,w,j,f=0;char head3610="學(xué)號(hào)","姓名&quo
48、t;,"年齡","c語言","代數(shù)","總分"m3:printf("t請(qǐng)輸入查詢方式:nt1.學(xué)號(hào)t2.名字t3.年齡n");scanf("%d",&a);if(a=1)printf("t請(qǐng)輸入學(xué)號(hào)n");scanf("%d",&d);for(i=0;i<ii;i+)if(stui.num=d)f=1;break;if(f=1)system("CLS");puts("t成績信息讀取中.
49、");printf("n");printf("t*nnt");for(j=0;j<6;j+)printf("%-10s",head3j);printf("nt");printf("%-10d%-10s",stui.num,);printf("%-10d",stui.age);printf("%-10.1f",stui.score_C);printf("%-10.1f",stui.score_algebr
50、a);printf("%-10.1f",stui.scoreAll);printf("n");printf("t*n");puts("t是否繼續(xù)操作?n");printf("t1.離開系統(tǒng)!n");printf("t2.回到主菜單!n");puts("t請(qǐng)選擇:n");while(flag=0)fflush(stdin);scanf("%d",&w);getchar();switch(w)case 1:Exit();flag=1;case 2:menu();choose();flag=1;break;default:printf("t對(duì)不起,操作無法進(jìn)行! 請(qǐng)重新選擇!n&q
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 柳州工學(xué)院《新媒體概論(藝術(shù))》2023-2024學(xué)年第二學(xué)期期末試卷
- 遼寧現(xiàn)代服務(wù)職業(yè)技術(shù)學(xué)院《第四紀(jì)地質(zhì)與地貌學(xué)》2023-2024學(xué)年第二學(xué)期期末試卷
- 益陽醫(yī)學(xué)高等??茖W(xué)?!杜照{(diào)綜合課程設(shè)計(jì)》2023-2024學(xué)年第二學(xué)期期末試卷
- 江蘇海事職業(yè)技術(shù)學(xué)院《材料制備科學(xué)(下)》2023-2024學(xué)年第二學(xué)期期末試卷
- 南昌職業(yè)大學(xué)《GS二次開發(fā)與應(yīng)用》2023-2024學(xué)年第二學(xué)期期末試卷
- 彩泥粽子手工課件
- 2024年貴金屬靶材項(xiàng)目資金需求報(bào)告代可行性研究報(bào)告
- 第17講 人類遺傳病-高考生物一輪復(fù)習(xí)精講課件
- 高中化學(xué)2023北京通州高三(上)期中化學(xué)(教師版)
- 新生兒臍部護(hù)理
- 實(shí)驗(yàn)五生態(tài)瓶的制作
- 2023年副主任醫(yī)師(副高)-中醫(yī)婦科學(xué)(副高)考試高頻試題(歷年真題)帶答案
- 大學(xué)生器樂訓(xùn)練基礎(chǔ)知到章節(jié)答案智慧樹2023年麗水學(xué)院
- 臨床常見功能障礙的傳統(tǒng)康復(fù)治療
- 阿片類藥物的麻醉應(yīng)用
- 學(xué)習(xí)型社區(qū)研究
- 城鎮(zhèn)燃?xì)庠O(shè)施運(yùn)行維護(hù)和搶修安全技術(shù)規(guī)程范本
- 企業(yè)數(shù)字化轉(zhuǎn)型的國外研究現(xiàn)狀共3篇
- 石油鉆機(jī)配件及相關(guān)產(chǎn)品HS編碼表
- 醫(yī)學(xué)微生物學(xué) 逆轉(zhuǎn)錄病毒
- T-GDWCA 0033-2018 耳機(jī)線材標(biāo)準(zhǔn)規(guī)范
評(píng)論
0/150
提交評(píng)論