版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、Taiyuan University of Science and Technology經(jīng)濟(jì)與管理學(xué)院C語言程序設(shè)計課程設(shè)計報告(2013/2014學(xué)年 第一學(xué)期)1專業(yè)班級:信1學(xué)生學(xué)號:20121指導(dǎo)教師:12014年1月9日課 程 設(shè) 計 任 務(wù) 書4第一章 功能需求描述51.1功能列表與說明51.2操作界面61.3操作方法8第二章 設(shè)計描述82.1編寫目的:82.2任務(wù)概述92.3數(shù)據(jù)結(jié)構(gòu)設(shè)計9 字段名9表的名稱9學(xué)生表9學(xué)生姓名9學(xué)生學(xué)號9班級號9學(xué)生學(xué)號為主鍵9班級表9班級號9時間9課程名稱9班級號為主鍵9成績表9學(xué)生學(xué)號9課程名稱9平時成績9考試成績9總成績92.3.2物理結(jié)構(gòu)設(shè)
2、計102.3.3數(shù)據(jù)結(jié)構(gòu)與程序的關(guān)系102.4接口設(shè)計102.5 安全保密設(shè)計112.6維護(hù)設(shè)計11第三章 算法描述123.1系統(tǒng)模塊圖123.2程序流程圖12第四章 開發(fā)過程描述224.1源代碼22Register();/call function調(diào)用函數(shù)24第五章 心得體會40經(jīng)濟(jì)與管理學(xué)院課 程 設(shè) 計 任 務(wù) 書課程設(shè)計名稱C語言程序設(shè)計課程設(shè)計一章 功能需求描述1.1功能列表與說明1.1.1系統(tǒng)的錄入功能: 1)用戶可將學(xué)生的姓名、性別、學(xué)號、班級和各科成績等信息錄入該系統(tǒng)。 2)可以在系統(tǒng)中對一個或多個學(xué)生的信息進(jìn)行修改。 3)可以在系統(tǒng)中插入一個或多個學(xué)生的信息。 4)可以在系統(tǒng)
3、中刪除一個或多個學(xué)生的信息。1.1.2系統(tǒng)的查詢功能: 1)可按學(xué)號查詢學(xué)生成績。 2)可按姓名查詢學(xué)生成績。 3)可瀏覽所有學(xué)生的成績。 4)可查詢某一學(xué)科的最高、最低成績、總成績和平均成績。 5)可查詢一個班級的最高、最低成績、總成績和平均成績。6)可查詢某一分?jǐn)?shù)段的人數(shù)和及格率等。1.1.3系統(tǒng)的保存功能: 1)學(xué)生信息可以按班級或個人存為數(shù)據(jù)文件,并且數(shù)據(jù)文件可在程序中打開、編輯和重新保存。 2)用戶輸入的學(xué)生信息可隨時保存數(shù)據(jù)文件。1.1.4系統(tǒng)的打開功能: 1)在系統(tǒng)中可以打開指定的數(shù)據(jù)文件且能對其進(jìn)行編輯。1.1.5系統(tǒng)的報表生成功能: 1) 按學(xué)號輸出一個班學(xué)生信息:學(xué)號、姓名
4、、性別、各科成績及總成績。 2) 按總成績輸出從高到低輸出學(xué)號、姓名信息。注:以上功能以菜單形式供用戶使用,并有一定的容錯功能。1.2操作界面 1.2.1主程序操作界面1.2.2錄入學(xué)生基本成績信息操作界面1.2.3保存學(xué)生成績基本信息界面1.2.4查詢學(xué)生成績操作界面1.2.5修改學(xué)生成績信息操作界面1.2.6提取學(xué)生成績操作界面1.3操作方法用戶根據(jù)需要選擇相應(yīng)功能并鍵入對應(yīng)的數(shù)字鍵并回車,若操作正確則顯示相應(yīng)子界面并可以根據(jù)接下去的提示進(jìn)行進(jìn)一步操作:若同時按下多鍵,則提示“輸入錯誤!只能按下一個數(shù)字鍵”,然后仍顯示主界面,讓用戶再次選擇,再次進(jìn)行想要進(jìn)行的操作,若主界面連續(xù)輸入錯誤達(dá)
5、3 次則退出主界面。在相應(yīng)子界面中仍然按照相關(guān)提示進(jìn)行操作,若操作正確,用戶會得到所想要的信息:若操作錯誤,則會顯示“對不起,您的操作有誤,請返回上一步重新進(jìn)行輸入!”第二章 設(shè)計描述2.1編寫目的: 根據(jù)需求分析文檔,初步提出問題的解決方案,以及軟件系統(tǒng)的體系結(jié)構(gòu)和數(shù)據(jù)結(jié)構(gòu)的設(shè)計方案并寫出書面文檔總體設(shè)計說明書,為下一步進(jìn)行詳細(xì)設(shè)計做準(zhǔn)備2.2任務(wù)概述1)用戶輸入:用戶可以根據(jù)系統(tǒng)提示輸入相關(guān)指令進(jìn)行操作,實(shí)現(xiàn)相關(guān)功能,并將相關(guān)指令存儲在某個值中。2)錄入功能:用戶可以利用鍵盤向系統(tǒng)中輸入學(xué)生的姓名、性別、學(xué)號、班級以及各科成績等信息。并對信息進(jìn)行修改3)文件保存:用戶在確定錄入的
6、成績準(zhǔn)確無誤后,可以將學(xué)生信息以班級為單位存為一個數(shù)據(jù)文件,同時用戶輸入的學(xué)生信息可隨時保存數(shù)據(jù)文件。4)文件打開:用戶可以將系統(tǒng)中的數(shù)據(jù)文件在程序中打開、編輯,但程序只能對當(dāng)前打開的數(shù)據(jù)文件進(jìn)行編輯5)查詢功能:可按學(xué)號查詢學(xué)生成績??砂葱彰樵儗W(xué)生成績??蔀g覽學(xué)生所有的成績。6)報表輸出:按學(xué)號輸出一個班學(xué)生信息:學(xué)號、姓名、性別、各科成績及總成績。按總成績輸出從高到低輸出學(xué)號、姓名信息。 在系統(tǒng)程序的設(shè)計中,利用C+的各種工具和方法,如:指針,函數(shù),數(shù)組,鏈表等進(jìn)行設(shè)計,來實(shí)現(xiàn)上述所需要的功能。2.3數(shù)據(jù)結(jié)構(gòu)設(shè)計2.3.1邏輯結(jié)構(gòu)設(shè)計 字段名表的名稱 學(xué)生表學(xué)生姓名學(xué)生學(xué)號班級號學(xué)生學(xué)號
7、為主鍵班級表班級號時間課程名稱班級號為主鍵成績表學(xué)生學(xué)號課程名稱平時成績考試成績總成績2.3.2物理結(jié)構(gòu)設(shè)計每個數(shù)據(jù)項都可以直接通過網(wǎng)頁的相關(guān)文本框來添加、更新。同時要查詢時,也可以直觀的在頁面輸入查詢條件,就可地到結(jié)果。2.3.3數(shù)據(jù)結(jié)構(gòu)與程序的關(guān)系成績錄入修改成績刪除記錄查詢成績計算總評分計算全班平均總評分統(tǒng)計各等級學(xué)生學(xué)生表課程表班級表成績表2.4接口設(shè)計用圖的形式說明本程序所隸屬的上一層模塊及隸屬于本程序的下一層模塊、子程序,說明參數(shù)賦值和調(diào)用方式,說明與本程序相直接關(guān)聯(lián)的數(shù)據(jù)結(jié)構(gòu)(數(shù)據(jù)庫、數(shù)據(jù)文卷)。2.5 安全保密設(shè)計設(shè)置相應(yīng)的措施,以防止不發(fā)事故的出現(xiàn)。用戶權(quán)限。用戶只能在其權(quán)限
8、內(nèi)操作。2.6維護(hù)設(shè)計各個模塊都有一定的聯(lián)系,然而又是相互獨(dú)立的。假如一塊出現(xiàn)故障,則直接修改就好,不會影響其他功能。第三章 算法描述3.1系統(tǒng)模塊圖本程序包括9個模塊,分別是注冊、登錄、錄入、修改、刪除、查詢、提取、保存、退出模塊,如下圖:注冊登錄錄入修改查詢刪除提取保存退出3.2程序流程圖3.2.1登錄,注冊界面流程圖1)注冊界面流程圖開始是否注冊Y輸入注冊信息N注冊成功結(jié)束2)登錄界面流程圖開始輸入用戶名用戶名是否正確Y輸入密碼登陸成功結(jié)束N密碼是否正確YN3.2.2子流程圖1)錄入程序流程圖開始輸入學(xué)生信息是否繼續(xù)輸入Y繼續(xù)輸入學(xué)生信息結(jié)束 N2)刪除程序流程圖開始輸入要刪除的學(xué)生的姓
9、名或?qū)W號判斷系統(tǒng)中是否存在此學(xué)生的信息N輸出“對不起!您所查詢的人不存在!”結(jié)束刪除此人所有的信息Y3)查詢程序流程圖開始輸入索要查詢學(xué)生的姓名或?qū)W號判斷該學(xué)生是否存在與系統(tǒng)中N輸出“對不起!您所查詢的學(xué)生信息不存在!”結(jié)束Y顯示該學(xué)生的所有信息4)修改程序流程圖開始輸入索要修改的學(xué)生的姓名或?qū)W號判斷系統(tǒng)中是否存在此學(xué)生的信息N輸出“對不起!您所查詢的學(xué)生信息不存在!”結(jié)束輸入所要修改的信息并保存4)保存程序流程圖開始輸入想要盡行保存對象的學(xué)號或姓名判斷輸入的信息是否存在N輸出“對不起!您所查詢的學(xué)生信息不存在!”結(jié)束Y輸入索要保存的信息并進(jìn)行保存5)提取程序流程圖開始輸入想要提取的班級或?qū)W生
10、信心判斷輸入的信息是否存在N輸出“對不起!您所查詢的學(xué)生信息不存在!”結(jié)束Y想要提取的信息成功被提取6)退出程序流程圖開始相關(guān)操作已經(jīng)完成是否退出系統(tǒng)輸出“您已經(jīng)成功退出該系統(tǒng),謝謝使用!”結(jié)束Y繼續(xù)輸入其他指令進(jìn)行操作N第四章 開發(fā)過程描述4.1源代碼#include<iostream>#include<fstream>#include<string> #include<iomanip>using namespace std;void Display();/調(diào)用display顯示switch()菜單void Register();/注冊void
11、 Enter();/登錄 void work();int amount=0; /記錄學(xué)生個數(shù)ofstream *file50;struct score float yw; float sx; float yy; float wl; float hx; float sw; struct score *next;class student public: string mun; string name; score sc1; score sc2; score sc3;/平時成績,期末成績,總成績; class student *next; ;void input(student *head); /
12、錄入void search1(student *head); /姓名查詢void search2(student *head); /學(xué)號查詢void change(student *head); /修改void shanchu(student *head); /刪除void get(student *head); /取數(shù)據(jù)void display(); /顯示菜單void show(student *head); /顯示數(shù)據(jù)void readin(student *head); /保存數(shù)據(jù)int main() Display();/顯示菜單注冊;登錄 cin.get(); return 0;v
13、oid Register()/注冊 ofstream outFile; outFile.open("web1.txt",ios_base:out|ios_base:app);/把注冊的ID、code保存到web1.txt文件當(dāng)中 if(!outFile.is_open()/如果沒有成功打開文件 cout<<"很遺憾,連接不上服務(wù)器" cout<<"程序結(jié)束" cin.get(); exit(EXIT_FAILURE); string name; string code; cout<<"請輸
14、入用戶名名稱: " cin.get();/吃掉空字符 getline(cin,name); outFile<<name<<endl;/記錄注冊的資料到web1.txt文件中 cout<<"請輸入密碼: " getline(cin,code); outFile<<code<<endl;/記錄注冊的資料到web1.txt文件中 cout<<"注冊成功!" outFile.close(); Display();void Enter()/登錄 cin.get(); ifstream
15、 inFile;/定義ifstream對象 inFile.open("web1.txt");/讀取web1.txt文件中的注冊資料 if(!inFile.is_open()/如果文件沒有成功打開 cout<<"很遺憾,連接不上服務(wù)器" exit(EXIT_FAILURE); string name; string code; string temp; cout<<"請輸入用戶名名稱: " getline(cin,name); while(getline(inFile,temp)/匹配用戶名 if(temp=na
16、me)/如果匹配用戶名成功 cout<<"請輸入密碼: "/請輸入密碼 getline(cin,code);/code getline(inFile,temp);/匹配code if(temp=code)/如果密碼正確,登錄成功 cout<<"登錄成功" work(); else cout<<"密碼錯誤" Display();/返回! void Display()/菜單 cout<<"1)Register注冊2)Enter登錄n3)Exit退出nnChoice:" i
17、nt choice;/選擇菜單 cin>>choice; switch(choice) case 1:/注冊 Register();/call function調(diào)用函數(shù) break;case 2:/登錄 Enter();/call function調(diào)頭函數(shù) break;case 3:/退出 exit(EXIT_FAILURE); void work() /主函數(shù) system("color f0"); char x; bool flag2=0; student *head=new student; /初始離散生數(shù)據(jù) head->next=NULL; cou
18、t<<" 歡迎使用學(xué)生成績管理系統(tǒng) n " display(); /顯示菜單 do do cin>>x; if(x>='0'&&x<='8') flag2=1; else cout<<" 請選擇相應(yīng)的數(shù)字進(jìn)行操作:n " while(flag2=0); switch(x) case '0':cout<<"*現(xiàn)在進(jìn)行學(xué)生信息錄入*n" input(head); cout<<"輸入的學(xué)生信息為:
19、n" show(head); cout<<"*n" display(); break; case '1': char z; cout<<"*現(xiàn)在進(jìn)行學(xué)生信息查詢*n" cout<<"請選擇查詢方式:" cout<<"(0).姓名查詢;(1).學(xué)號查詢:" cin>>z; while(z!='0'&&z!='1') cout<<"指令錯誤<請選擇(0)或者(
20、1)!>!"<<endl; cout<<"請選擇查詢方式:(0).姓名查詢;(1).學(xué)號查詢:" cin>>z; switch(z) case '0': search1(head);break;/按姓名查詢 case '1': search2(head);break;/按學(xué)號查詢 cout<<"*n" display(); break; case '2': cout<<"*現(xiàn)在進(jìn)行學(xué)生信息修改*n" change
21、(head); cout<<"*n" display(); break; /按姓名修改 case '3': cout<<"*現(xiàn)在進(jìn)行學(xué)生信息刪除*n" shanchu(head); show(head); cout<<"*n" display(); break; /刪除 case '4':cout<<"*現(xiàn)在進(jìn)行提取學(xué)生信息*n" get(head); cout<<"*n" display(); brea
22、k; case '5':cout<<"*現(xiàn)在進(jìn)行保存學(xué)生信息*n" readin(head); cout<<"*n" display(); break; case '6': cout<<"*n" cout<<" ¤ 您已退出學(xué)生成績管理系統(tǒng), 謝謝使用! ¤ n" cout<<"*n" cout<<endl; exit(0); break; while(flag2=1);v
23、oid display() cout<<" +*+*+n" cout<<" $ 菜 單 $n" cout<<" $ $n" cout<<" $ 請選擇: $n" cout<<" $ 0-錄入; 1-查詢; 2-修改; $n" cout<<" $ 3-刪除; 4-提取; 5-保存; $n" cout<<" $ 6-退出; $n" cout<<" *+*+
24、*n" cout<<" 請選擇相應(yīng)的數(shù)字進(jìn)行操作: "void chushihua(student *head) int j=0;char c; cout<<"注意:初始化操作將刪除<總評成績.txt>文件中的所有信息!n" cout<<"是否繼續(xù)操作?(y/n):"cin>>c; if (c='y') amount=1; filej=new ofstream("F:課設(shè)總評成績.txt",ios:out); cout<&l
25、t;".成功清除<總評成績.txt>的信息n "void show(student *head) student *stu=head; cout<<"| 學(xué)號 | 姓名 | C+ | 信息資源管理 | 英語 | 馬克思 | 形勢政策 | 概率 |"<<endl; while(stu->next!=NULL) (*stu).sc3.yw=(*stu).sc1.yw)*0.30+(*stu).sc2.yw)*0.70;/總成績計算 (*stu).sc3.sx=(*stu).sc1.sx)*0.30+(*stu).sc
26、2.sx)*0.70; (*stu).sc3.yy=(*stu).sc1.yy)*0.30+(*stu).sc2.yy)*0.70; (*stu).sc3.wl=(*stu).sc1.wl)*0.30+(*stu).sc2.wl)*0.70; (*stu).sc3.hx=(*stu).sc1.hx)*0.30+(*stu).sc2.hx)*0.70; (*stu).sc3.sw=(*stu).sc1.sw)*0.30+(*stu).sc2.sw)*0.70; stu=stu->next; cout<<"| "<<setw(9)<<(
27、*stu).mun; cout<<" | "<<setw(6)<<(*stu).name; cout<<" | "<<setw(4)<<(*stu).sc3.yw; cout<<" | "<<setw(4)<<(*stu).sc3.sx; cout<<" | "<<setw(4)<<(*stu).sc3.yy; cout<<" | "<
28、<setw(4)<<(*stu).sc3.wl; cout<<" | "<<setw(4)<<(*stu).sc3.hx; cout<<" | "<<setw(4)<<(*stu).sc3.sw; cout<<" | "<<endl; void readin(student *head) char a; student *stu=head->next; cout<<"現(xiàn)在保存輸入學(xué)生數(shù)據(jù),是否繼
29、續(xù)操作?(y/n)" cin>>a; ofstream outfile("F:課設(shè)總評成績.txt",ios:out); if(! outfile) cout<<"打開文件錯誤!n" exit(0); while(a!='n') while(stu!=NULL) outfile<<"*第"<<amount<<"個學(xué)生的數(shù)據(jù):*n" outfile<<"| 學(xué)號 | 姓名 | C+ | 信息資源管理 | 英語
30、| 馬克思 | 形勢政策 | 概率 |"<<endl; outfile<<" 平時成績: n" <<"| "<<setw(9)<<(*stu).mun<<" | "<<setw(6)<<(*stu).name<<" | "<<setw(4)<<(*stu).sc1.yw<< " | "<<setw(4)<<(*stu).
31、sc1.sx<<" | "<<setw(4)<<(*stu).sc1.yy<<" | "<<setw(4)<<(*stu).sc1.wl <<" | "<<setw(4)<<(*stu).sc1.hx<<" | "<<setw(4)<<(*stu).sc1.sw<<endl; outfile<<" 期末成績: n" <<
32、;"| "<<setw(9)<<(*stu).mun<<" | "<<setw(6)<<(*stu).name<<" | "<<setw(4)<<(*stu).sc2.yw<< " | "<<setw(4)<<(*stu).sc2.sx<<" | "<<setw(4)<<(*stu).sc2.yy<<" |
33、"<<setw(4)<<(*stu).sc2.wl <<" | "<<setw(4)<<(*stu).sc2.hx<<" | "<<setw(4)<<(*stu).sc2.sw<<endl; outfile<<" 總評成績: n" <<"| "<<setw(9)<<(*stu).mun<<" | "<<set
34、w(6)<<(*stu).name<<" | "<<setw(4)<<(*stu).sc3.yw<< " | "<<setw(4)<<(*stu).sc3.sx<<" | "<<setw(4)<<(*stu).sc3.yy<<" | "<<setw(4)<<(*stu).sc3.wl <<" | "<<setw(4)&
35、lt;<(*stu).sc3.hx<<" | "<<setw(4)<<(*stu).sc3.sw<<endl; amount+; stu=stu->next; break; cout<<".成功將學(xué)生數(shù)據(jù)保存到<總評成績.txt>中! " outfile.close(); void input(student *head) char c; int j=0; student *p=head; filej=new ofstream("F:課設(shè)總評成績.txt&quo
36、t;,ios:app); do student *stu=new student; cout<<"請輸入學(xué)號(12位數(shù)字):"<<setw(12); cin>>(*stu).mun; cout<<"請輸入姓名:"<<setw(20); cin>>(*stu).name; cout<<"請輸入C+成績(平時成績和期末成績):"<<setw(2); cin>>(*stu).sc1.yw>>(*stu).sc2.yw; c
37、out<<"請輸入信息資源管理成績(平時成績和期末成績):"<<setw(2); cin>>(*stu).sc1.sx>>(*stu).sc2.sx; cout<<"請輸入英語成績(平時成績和期末成績):"<<setw(2); cin>>(*stu).sc1.yy>>(*stu).sc2.yy; cout<<"請輸入馬克思成績(平時成績和期末成績):"<<setw(2); cin>>(*stu).sc1.
38、wl>>(*stu).sc2.wl; cout<<"請輸入形勢政策成績(平時成績和期末成績):"<<setw(2); cin>>(*stu).sc1.hx>>(*stu).sc2.hx; cout<<"請輸入概率成績(平時成績和期末成績):"<<setw(2); cin>>(*stu).sc1.sw>>(*stu).sc2.sw; (*stu).sc3.yw=(*stu).sc1.yw)*0.30+(*stu).sc2.yw)*0.70;/總成績計
39、算 (*stu).sc3.sx=(*stu).sc1.sx)*0.30+(*stu).sc2.sx)*0.70; (*stu).sc3.yy=(*stu).sc1.yy)*0.30+(*stu).sc2.yy)*0.70; (*stu).sc3.wl=(*stu).sc1.wl)*0.30+(*stu).sc2.wl)*0.70; (*stu).sc3.hx=(*stu).sc1.hx)*0.30+(*stu).sc2.hx)*0.70; (*stu).sc3.sw=(*stu).sc1.sw)*0.30+(*stu).sc2.sw)*0.70; stu->next=p->next
40、; p->next=stu; amount+; cout<<"數(shù)據(jù)錄入成功,想繼續(xù)錄入嗎(y/n)" cin>>c; p=p->next; while(c!='y'&&c!='n') cout<<"指令錯誤<請輸入y/n!>!"<<endl; cout<<"數(shù)據(jù)錄入成功,想繼續(xù)錄入嗎(y/n)" cin>>c; while(c='y'); j+; cout<<&qu
41、ot;輸入了 "<<amount<<"個學(xué)生的信息."<<endl; void search1(student *head)/姓名查詢 char c; string name; do student *stu=head->next; bool flag=0; cout<<"請輸入你要查詢的學(xué)生姓名:" cin>>name; do if(stu!=NULL&&name=(*stu).name) /輸出總成績 flag=1; cout<<"您要查
42、詢的學(xué)生是:"<<stu->name<<endl; cout<<"| 學(xué)號 | 姓名 | C+ | 信息資源管理 | 英語 | 馬克思 | 形勢政策 | 概率 |"<<endl; cout<<"| "<<setw(12)<<(*stu).mun; cout<<" | "<<setw(6)<<(*stu).name; cout<<" | "<<setw(4)&
43、lt;<(*stu).sc3.yw; cout<<" | "<<setw(4)<<(*stu).sc3.sx; cout<<" | "<<setw(4)<<(*stu).sc3.yy; cout<<" | "<<setw(4)<<(*stu).sc3.wl; cout<<" | "<<setw(4)<<(*stu).sc3.hx; cout<<"
44、 | "<<setw(4)<<(*stu).sc3.sw; cout<<" | "<<endl; stu=stu->next; while(stu!=NULL); if(flag=0) cout<<"對不起!您要查詢的學(xué)生不存在!"<<endl; cout<<"您想繼續(xù)查詢嗎?(y/n)" cin>>c; while(c!='y'&&c!='n') cout<<&q
45、uot;指令錯誤<請輸入y/n!>!"<<endl; cout<<"您想繼續(xù)查詢嗎?(y/n)" cin>>c; while(c='y'); void search2(student *head)/學(xué)號查詢 char c;string no; do student *stu=head->next; int flag=0; cout<<"請輸入你要查詢的學(xué)生學(xué)號:" cin>>no; do if(stu!=NULL&&no=(*stu).
46、mun) flag=1; cout<<"您要查詢的學(xué)生是:"<<stu->name<<endl; cout<<"| 學(xué)號 | 姓名 | C+ | 信息資源管理 | 英語 | 馬克思 | 形勢政策 | 概率 |"<<endl; cout<<"| "<<setw(9)<<(*stu).mun; cout<<" | "<<setw(6)<<(*stu).name; cout<&l
47、t;" | "<<setw(4)<<(*stu).sc3.yw; cout<<" | "<<setw(4)<<(*stu).sc3.sx; cout<<" | "<<setw(4)<<(*stu).sc3.yy; cout<<" | "<<setw(4)<<(*stu).sc3.wl; cout<<" | "<<setw(4)<<
48、(*stu).sc3.hx; cout<<" | "<<setw(4)<<(*stu).sc3.sw; cout<<" | "<<endl; stu=stu->next; while(stu!=NULL); if(flag=0) cout<<"對不起!您要查詢的學(xué)生不存在!"<<endl; cout<<"您想繼續(xù)查詢嗎?(y/n)" cin>>c; while(c!='y'&&a
49、mp;c!='n') cout<<"指令錯誤<請輸入y/n!>!"<<endl; cout<<"您想繼續(xù)查詢嗎?(y/n)"<<endl; cin>>c; while(c='y'); void change(student *head) string name; char c; do bool flag2=0; student *stu=head ; score sc1; score sc2; score sc3; cout<<"
50、請輸入您要修改的學(xué)生的姓名:" cin>>name; do if(name=(*stu).name) flag2=1; cout<<"請輸入新的.C+.成績(平時成績和期末成績):" cin>>sc1.yw>>sc2.yw; cout<<"請輸入新的.信息資源管理.成績(平時成績和期末成績):" cin>>sc1.sx>>sc2.sx; cout<<"請輸入新的.英語.成績(平時成績和期末成績):" cin>>sc1.
51、yy>>sc2.yy; cout<<"請輸入新的.馬克思.成績(平時成績和期末成績):" cin>>sc1.wl>>sc2.wl; cout<<"請輸入新的.形勢政策.成績(平時成績和期末成績):" cin>>sc1.hx>>sc2.hx; cout<<"請輸入新的.概率.成績(平時成績和期末成績):" cin>>sc1.sw>>sc2.sw; sc3.yw=sc1.yw*0.30+sc2.yw*0.70;/總成績計
52、算 sc3.sx=sc1.sx*0.30+sc2.sx*0.70; sc3.yy=sc1.yy*0.30+sc2.yy*0.70; sc3.wl=sc1.wl*0.30+sc2.wl*0.70; sc3.hx=sc1.hx*0.30+sc2.hx*0.70; sc3.sw=sc1.sw*0.30+sc2.sw*0.70; (*stu).sc3.yw=sc3.yw; (*stu).sc3.sx=sc3.sx; (*stu).sc3.yy=sc3.yy; (*stu).sc3.wl=sc3.wl; (*stu).sc3.hx=sc3.hx; (*stu).sc3.sw=sc3.sw; cout&l
53、t;<"| 學(xué)號 | 姓名 | C+ | 信息資源管理 | 英語 | 馬克思 | 形勢政策 | 概率 |"<<endl; cout<<"| "<<setw(9)<<(*stu).mun; cout<<" | "<<setw(6)<<(*stu).name; cout<<" | "<<setw(4)<<(*stu).sc3.yw; cout<<" | "<
54、<setw(4)<<(*stu).sc3.sx; cout<<" | "<<setw(4)<<(*stu).sc3.yy; cout<<" | "<<setw(4)<<(*stu).sc3.wl; cout<<" | "<<setw(4)<<(*stu).sc3.hx; cout<<" | "<<setw(4)<<(*stu).sc3.sw; cout&l
55、t;<" | "<<endl; cout<<".數(shù)據(jù)修改成功!n" break; stu=stu->next; while(stu!=NULL); if(flag2=0) cout<<"對不起!您要修改的學(xué)生不存在!請檢查重新輸入!"<<endl; cout<<"想繼續(xù)修改嗎?(y/n)" cin>>c; if(c!='y'&&c!='n') cout<<"指令錯
56、誤!請重新輸入<y/n>!" cin>>c; while(c='y'); void shanchu(student *head)/學(xué)號 char c;string no; do int flag=0; cout<<"請輸入你要刪除的學(xué)生學(xué)號:" cin>>no; student *q,*p; q=head; while(q->next!=NULL&&q->next->mun!=no) q=q->next; if(q->next!=NULL) flag=1; p=q->next; q->next=q->next->next; amount-; free(p); cout<<".成功刪除! " if(flag=0) cout<<"對不起!您要刪除的學(xué)生不存在!"<<
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 個人獨(dú)資企業(yè)解散協(xié)議書(2024版)3篇
- 2024飲料行業(yè)液體運(yùn)輸協(xié)議
- 2025年度綠色有機(jī)大米直銷合作合同3篇
- 專屬保安服務(wù)供應(yīng)協(xié)議(2024年度)版B版
- 2025年度出租車駕駛員權(quán)益保障承包合同3篇
- 二零二五年度綠城物業(yè)設(shè)施設(shè)備檢修維護(hù)服務(wù)合同4篇
- 標(biāo)準(zhǔn)化的辦公室實(shí)驗(yàn)室規(guī)劃與設(shè)計建議
- 科技人才選拔中的成績評估方法研究
- 2025版園林綠化工程后期養(yǎng)護(hù)與維護(hù)合同4篇
- 2025年度美術(shù)館東館館舍租賃藝術(shù)展覽合作合同4篇
- 2025水利云播五大員考試題庫(含答案)
- 中藥飲片驗(yàn)收培訓(xùn)
- DB34T 1831-2013 油菜收獲與秸稈粉碎機(jī)械化聯(lián)合作業(yè)技術(shù)規(guī)范
- 創(chuàng)傷處理理論知識考核試題及答案
- 稅前工資反算表模板
- 2019級水電站動力設(shè)備專業(yè)三年制人才培養(yǎng)方案
- 肝素誘導(dǎo)的血小板減少癥培訓(xùn)課件
- 抖音認(rèn)證承諾函
- 高等數(shù)學(xué)(第二版)
- 四合一體系基礎(chǔ)知識培訓(xùn)課件
- ICD-9-CM-3手術(shù)與操作國家臨床版亞目表
評論
0/150
提交評論