版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
PAGEPAGE39TaiyuanUniversityofScienceandTechnologyTaiyuanUniversityofScienceandTechnology經(jīng)濟(jì)與管理學(xué)院《C語(yǔ)言程序設(shè)計(jì)》課程設(shè)計(jì)報(bào)告(2013/2014學(xué)年第一學(xué)期)1專業(yè)班級(jí):信1學(xué)生學(xué)號(hào):20121指導(dǎo)教師:12014年1月9日TOC\o"1-2"\h\z\u課程設(shè)計(jì)任務(wù)書 4第一章功能需求描述 51.1功能列表與說明 51.2操作界面 61.3操作方法 8第二章設(shè)計(jì)描述 82.1編寫目的: 82.2任務(wù)概述 92.3數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì) 9字段名 9表的名稱 9學(xué)生表 9學(xué)生姓名 9學(xué)生學(xué)號(hào) 9班級(jí)號(hào) 9學(xué)生學(xué)號(hào)為主鍵 9班級(jí)表 9班級(jí)號(hào) 9時(shí)間 9課程名稱 9班級(jí)號(hào)為主鍵 9成績(jī)表 9學(xué)生學(xué)號(hào) 9課程名稱 9平時(shí)成績(jī) 9考試成績(jī) 9總成績(jī) 92.3.2物理結(jié)構(gòu)設(shè)計(jì) 102.3.3數(shù)據(jù)結(jié)構(gòu)與程序的關(guān)系 102.4接口設(shè)計(jì) 102.5安全保密設(shè)計(jì) 112.6維護(hù)設(shè)計(jì) 11第三章算法描述 123.1系統(tǒng)模塊圖 123.2程序流程圖 12第四章開發(fā)過程描述 224.1源代碼 22Register();//callfunction調(diào)用函數(shù) 24第五章心得體會(huì) 40經(jīng)濟(jì)與管理學(xué)院課程設(shè)計(jì)任務(wù)書課程設(shè)計(jì)名稱C語(yǔ)言程序設(shè)計(jì)課程設(shè)計(jì)一章功能需求描述1.1功能列表與說明1.1.1系統(tǒng)的錄入功能:1)用戶可將學(xué)生的姓名、性別、學(xué)號(hào)、班級(jí)和各科成績(jī)等信息錄入該系統(tǒng)。2)可以在系統(tǒng)中對(duì)一個(gè)或多個(gè)學(xué)生的信息進(jìn)行修改。3)可以在系統(tǒng)中插入一個(gè)或多個(gè)學(xué)生的信息。4)可以在系統(tǒng)中刪除一個(gè)或多個(gè)學(xué)生的信息。1.1.2系統(tǒng)的查詢功能:1)可按學(xué)號(hào)查詢學(xué)生成績(jī)。2)可按姓名查詢學(xué)生成績(jī)。3)可瀏覽所有學(xué)生的成績(jī)。4)可查詢某一學(xué)科的最高、最低成績(jī)、總成績(jī)和平均成績(jī)。5)可查詢一個(gè)班級(jí)的最高、最低成績(jī)、總成績(jī)和平均成績(jī)。6)可查詢某一分?jǐn)?shù)段的人數(shù)和及格率等。1.1.3系統(tǒng)的保存功能:1)學(xué)生信息可以按班級(jí)或個(gè)人存為數(shù)據(jù)文件,并且數(shù)據(jù)文件可在程序中打開、編輯和重新保存。
2)用戶輸入的學(xué)生信息可隨時(shí)保存數(shù)據(jù)文件。1.1.4系統(tǒng)的打開功能:1)在系統(tǒng)中可以打開指定的數(shù)據(jù)文件且能對(duì)其進(jìn)行編輯。1.1.5系統(tǒng)的報(bào)表生成功能:1)按學(xué)號(hào)輸出一個(gè)班學(xué)生信息:學(xué)號(hào)、姓名、性別、各科成績(jī)及總成績(jī)。
2)按總成績(jī)輸出從高到低輸出學(xué)號(hào)、姓名信息。
注:以上功能以菜單形式供用戶使用,并有一定的容錯(cuò)功能。1.2操作界面1.2.1主程序操作界面1.2.2錄入學(xué)生基本成績(jī)信息操作界面1.2.3保存學(xué)生成績(jī)基本信息界面1.2.4查詢學(xué)生成績(jī)操作界面1.2.5修改學(xué)生成績(jī)信息操作界面1.2.6提取學(xué)生成績(jī)操作界面1.3操作方法用戶根據(jù)需要選擇相應(yīng)功能并鍵入對(duì)應(yīng)的數(shù)字鍵并回車,若操作正確則顯示相應(yīng)子界面并可以根據(jù)接下去的提示進(jìn)行進(jìn)一步操作:若同時(shí)按下多鍵,則提示“輸入錯(cuò)誤!只能按下一個(gè)數(shù)字鍵”,然后仍顯示主界面,讓用戶再次選擇,再次進(jìn)行想要進(jìn)行的操作,若主界面連續(xù)輸入錯(cuò)誤達(dá)3次則退出主界面。在相應(yīng)子界面中仍然按照相關(guān)提示進(jìn)行操作,若操作正確,用戶會(huì)得到所想要的信息:若操作錯(cuò)誤,則會(huì)顯示“對(duì)不起,您的操作有誤,請(qǐng)返回上一步重新進(jìn)行輸入!”第二章設(shè)計(jì)描述2.1編寫目的:
根據(jù)需求分析文檔,初步提出問題的解決方案,以及軟件系統(tǒng)的體系結(jié)構(gòu)和數(shù)據(jù)結(jié)構(gòu)的設(shè)計(jì)方案并寫出書面文檔總體設(shè)計(jì)說明書,為下一步進(jìn)行詳細(xì)設(shè)計(jì)做準(zhǔn)備2.2任務(wù)概述1)用戶輸入:用戶可以根據(jù)系統(tǒng)提示輸入相關(guān)指令進(jìn)行操作,實(shí)現(xiàn)相關(guān)功能,并將相關(guān)指令存儲(chǔ)在某個(gè)值中。2)錄入功能:用戶可以利用鍵盤向系統(tǒng)中輸入學(xué)生的姓名、性別、學(xué)號(hào)、班級(jí)以及各科成績(jī)等信息。并對(duì)信息進(jìn)行修改3)文件保存:用戶在確定錄入的成績(jī)準(zhǔn)確無誤后,可以將學(xué)生信息以班級(jí)為單位存為一個(gè)數(shù)據(jù)文件,同時(shí)用戶輸入的學(xué)生信息可隨時(shí)保存數(shù)據(jù)文件。4)文件打開:用戶可以將系統(tǒng)中的數(shù)據(jù)文件在程序中打開、編輯,但程序只能對(duì)當(dāng)前打開的數(shù)據(jù)文件進(jìn)行編輯5)查詢功能:可按學(xué)號(hào)查詢學(xué)生成績(jī)??砂葱彰樵儗W(xué)生成績(jī)??蔀g覽學(xué)生所有的成績(jī)。6)報(bào)表輸出:按學(xué)號(hào)輸出一個(gè)班學(xué)生信息:學(xué)號(hào)、姓名、性別、各科成績(jī)及總成績(jī)。按總成績(jī)輸出從高到低輸出學(xué)號(hào)、姓名信息。在系統(tǒng)程序的設(shè)計(jì)中,利用C++的各種工具和方法,如:指針,函數(shù),數(shù)組,鏈表等進(jìn)行設(shè)計(jì),來實(shí)現(xiàn)上述所需要的功能。2.3數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)2.3.1邏輯結(jié)構(gòu)設(shè)計(jì)字段名表的名稱學(xué)生表學(xué)生姓名學(xué)生學(xué)號(hào)班級(jí)號(hào)學(xué)生學(xué)號(hào)為主鍵班級(jí)表班級(jí)號(hào)時(shí)間課程名稱班級(jí)號(hào)為主鍵成績(jī)表學(xué)生學(xué)號(hào)課程名稱平時(shí)成績(jī)考試成績(jī)總成績(jī)2.3.2物理結(jié)構(gòu)設(shè)計(jì)每個(gè)數(shù)據(jù)項(xiàng)都可以直接通過網(wǎng)頁(yè)的相關(guān)文本框來添加、更新。同時(shí)要查詢時(shí),也可以直觀的在頁(yè)面輸入查詢條件,就可地到結(jié)果。2.3.3數(shù)據(jù)結(jié)構(gòu)與程序的關(guān)系成績(jī)錄入修改成績(jī)刪除記錄查詢成績(jī)計(jì)算總評(píng)分計(jì)算全班平均總評(píng)分統(tǒng)計(jì)各等級(jí)學(xué)生學(xué)生表√課程表√班級(jí)表√成績(jī)表√√√√√√√2.4接口設(shè)計(jì)用圖的形式說明本程序所隸屬的上一層模塊及隸屬于本程序的下一層模塊、子程序,說明參數(shù)賦值和調(diào)用方式,說明與本程序相直接關(guān)聯(lián)的數(shù)據(jù)結(jié)構(gòu)(數(shù)據(jù)庫(kù)、數(shù)據(jù)文卷)。2.5安全保密設(shè)計(jì)設(shè)置相應(yīng)的措施,以防止不發(fā)事故的出現(xiàn)。用戶權(quán)限。用戶只能在其權(quán)限內(nèi)操作。2.6維護(hù)設(shè)計(jì)各個(gè)模塊都有一定的聯(lián)系,然而又是相互獨(dú)立的。假如一塊出現(xiàn)故障,則直接修改就好,不會(huì)影響其他功能。第三章算法描述3.1系統(tǒng)模塊圖本程序包括9個(gè)模塊,分別是注冊(cè)、登錄、錄入、修改、刪除、查詢、提取、保存、退出模塊,如下圖:注冊(cè)注冊(cè)登錄錄入修改查詢刪除提取保存退出3.2程序流程圖3.2.1登錄,注冊(cè)界面流程圖1)注冊(cè)界面流程圖開始開始是否注冊(cè)Y輸入注冊(cè)信息N注冊(cè)成功結(jié)束2)登錄界面流程圖開始開始輸入用戶名用戶名是否正確Y輸入密碼登陸成功結(jié)束N密碼是否正確YN3.2.2子流程圖1)錄入程序流程圖開始開始輸入學(xué)生信息是否繼續(xù)輸入Y繼續(xù)輸入學(xué)生信息結(jié)束N2)刪除程序流程圖開始開始輸入要?jiǎng)h除的學(xué)生的姓名或?qū)W號(hào)判斷系統(tǒng)中是否存在此學(xué)生的信息N輸出“對(duì)不起!您所查詢的人不存在!”結(jié)束刪除此人所有的信息Y3)查詢程序流程圖開始開始輸入索要查詢學(xué)生的姓名或?qū)W號(hào)判斷該學(xué)生是否存在與系統(tǒng)中N輸出“對(duì)不起!您所查詢的學(xué)生信息不存在!”結(jié)束Y顯示該學(xué)生的所有信息4)修改程序流程圖開始開始輸入索要修改的學(xué)生的姓名或?qū)W號(hào)判斷系統(tǒng)中是否存在此學(xué)生的信息N輸出“對(duì)不起!您所查詢的學(xué)生信息不存在!”結(jié)束輸入所要修改的信息并保存4)保存程序流程圖開始開始輸入想要盡行保存對(duì)象的學(xué)號(hào)或姓名判斷輸入的信息是否存在N輸出“對(duì)不起!您所查詢的學(xué)生信息不存在!”結(jié)束Y輸入索要保存的信息并進(jìn)行保存5)提取程序流程圖開始開始輸入想要提取的班級(jí)或?qū)W生信心判斷輸入的信息是否存在N輸出“對(duì)不起!您所查詢的學(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>usingnamespacestd;voidDisplay();//調(diào)用display顯示switch()菜單voidRegister();//注冊(cè)voidEnter();//登錄voidwork();intamount=0;//記錄學(xué)生個(gè)數(shù)ofstream*file[50];structscore{floatyw;floatsx;floatyy;floatwl;floathx;floatsw;structscore*next;};classstudent{public:stringmun;stringname;scoresc1;scoresc2;scoresc3;//平時(shí)成績(jī),期末成績(jī),總成績(jī);classstudent*next;};voidinput(student*head);//錄入voidsearch1(student*head);//姓名查詢voidsearch2(student*head);//學(xué)號(hào)查詢voidchange(student*head);//修改voidshanchu(student*head);//刪除voidget(student*head);//取數(shù)據(jù)voiddisplay();//顯示菜單voidshow(student*head);//顯示數(shù)據(jù)voidreadin(student*head);//保存數(shù)據(jù)intmain(){Display();//顯示菜單1注冊(cè);2登錄cin.get();return0;}voidRegister()//注冊(cè){ofstreamoutFile;outFile.open("web1.txt",ios_base::out|ios_base::app);//把注冊(cè)的ID、code保存到web1.txt文件當(dāng)中if(!outFile.is_open())//如果沒有成功打開文件{cout<<"很遺憾,連接不上服務(wù)器";cout<<"程序結(jié)束";cin.get();exit(EXIT_FAILURE);}stringname;stringcode;cout<<"請(qǐng)輸入用戶名名稱:";cin.get();//吃掉空字符getline(cin,name);outFile<<name<<endl;//記錄注冊(cè)的資料到web1.txt文件中cout<<"請(qǐng)輸入密碼:";getline(cin,code);outFile<<code<<endl;//記錄注冊(cè)的資料到web1.txt文件中cout<<"注冊(cè)成功!";outFile.close();Display();}voidEnter()//登錄{cin.get();ifstreaminFile;//定義ifstream對(duì)象inFile.open("web1.txt");//讀取web1.txt文件中的注冊(cè)資料if(!inFile.is_open())//如果文件沒有成功打開{cout<<"很遺憾,連接不上服務(wù)器";exit(EXIT_FAILURE);}stringname;stringcode;stringtemp;cout<<"請(qǐng)輸入用戶名名稱:";getline(cin,name);while(getline(inFile,temp))//匹配用戶名{if(temp==name)//如果匹配用戶名成功{cout<<"請(qǐng)輸入密碼:";//請(qǐng)輸入密碼getline(cin,code);//codegetline(inFile,temp);//匹配codeif(temp==code)//如果密碼正確,登錄成功{cout<<"登錄成功";work();}else{cout<<"密碼錯(cuò)誤";Display();//返回!}}}}voidDisplay()//菜單{cout<<"1)Register注冊(cè)2)Enter登錄\n3)Exit退出\n\nChoice:";intchoice;//選擇菜單cin>>choice;switch(choice){case1://注冊(cè)Register();//callfunction調(diào)用函數(shù)break;case2://登錄Enter();//callfunction調(diào)頭函數(shù)break;case3://退出exit(EXIT_FAILURE);}}voidwork()//主函數(shù){system("colorf0");charx;boolflag2=0;student*head=newstudent;//初始離散生數(shù)據(jù)head->next=NULL;cout<<"★歡迎使用學(xué)生成績(jī)管理系統(tǒng)★\n";display();//顯示菜單do{do{cin>>x;if((x>='0'&&x<='8'))flag2=1;else{cout<<"請(qǐng)選擇相應(yīng)的數(shù)字進(jìn)行操作:\n";}}while(flag2==0);switch(x){case'0':cout<<"******************************現(xiàn)在進(jìn)行學(xué)生信息錄入******************************\n";input(head);cout<<"輸入的學(xué)生信息為:\n";show(head);cout<<"********************************************************************************\n";display();break;case'1':{charz;cout<<"******************************現(xiàn)在進(jìn)行學(xué)生信息查詢******************************\n";cout<<"請(qǐng)選擇查詢方式:";cout<<"(0).姓名查詢;(1).學(xué)號(hào)查詢:";cin>>z;while(z!='0'&&z!='1'){cout<<"指令錯(cuò)誤<請(qǐng)選擇(0)或者(1)!>!!!!!!!"<<endl;cout<<"請(qǐng)選擇查詢方式:(0).姓名查詢;(1).學(xué)號(hào)查詢:";cin>>z;}switch(z){case'0':search1(head);break;//按姓名查詢case'1':search2(head);break;//按學(xué)號(hào)查詢}cout<<"********************************************************************************\n";display();break;}case'2':cout<<"******************************現(xiàn)在進(jìn)行學(xué)生信息修改******************************\n";change(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();break;case'5':cout<<"******************************現(xiàn)在進(jìn)行保存學(xué)生信息******************************\n";readin(head);cout<<"********************************************************************************\n";display();break;case'6':cout<<"********************************************************************************\n";cout<<"¤您已退出學(xué)生成績(jī)管理系統(tǒng),謝謝使用!¤\n";cout<<"********************************************************************************\n";cout<<endl;exit(0);break;}}while(flag2==1);}voiddisplay(){cout<<"++++++++++**********++++++++++**********++++++++++\n";cout<<"$菜單$\n";cout<<"$^^^^^^^^^^$\n";cout<<"$請(qǐng)選擇:$\n";cout<<"$[0]-錄入;[1]-查詢;[2]-修改;$\n";cout<<"$[3]-刪除;[4]-提取;[5]-保存;$\n";cout<<"$[6]-退出;$\n";cout<<"**********++++++++++**********++++++++++**********\n";cout<<"請(qǐng)選擇相應(yīng)的數(shù)字進(jìn)行操作:";}voidchushihua(student*head){intj=0;charc;cout<<"注意:初始化操作將刪除<總評(píng)成績(jī).txt>文件中的所有信息!!!!!!\n";cout<<"是否繼續(xù)操作?(y/n):";cin>>c;if(c='y'){amount=1;file[j]=newofstream("F:\\課設(shè)\\總評(píng)成績(jī).txt",ios::out);}cout<<"成功清除<總評(píng)成績(jī).txt>的信息\n";}voidshow(student*head){student*stu=head;cout<<"|學(xué)號(hào)|姓名|C++|信息資源管理|英語(yǔ)|馬克思|形勢(shì)政策|概率|"<<endl;while(stu->next!=NULL){(*stu).sc3.yw=((*stu).sc1.yw)*0.30+((*stu).sc2.yw)*0.70;//總成績(jī)計(jì)算(*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=stu->next;cout<<"|"<<setw(9)<<(*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<<"|"<<setw(4)<<(*stu).sc3.wl;cout<<"|"<<setw(4)<<(*stu).sc3.hx;cout<<"|"<<setw(4)<<(*stu).sc3.sw;cout<<"|"<<endl;}}voidreadin(student*head){chara;student*stu=head->next;cout<<"現(xiàn)在保存輸入學(xué)生數(shù)據(jù),是否繼續(xù)操作?(y/n)";cin>>a;ofstreamoutfile("F:\\課設(shè)\\總評(píng)成績(jī).txt",ios::out);if(!outfile){cout<<"打開文件錯(cuò)誤!!!!!!!\n";exit(0);}while(a!='n'){while(stu!=NULL){outfile<<"************************第"<<amount<<"個(gè)學(xué)生的數(shù)據(jù):*************************\n";outfile<<"|學(xué)號(hào)|姓名|C++|信息資源管理|英語(yǔ)|馬克思|形勢(shì)政策|概率|"<<endl;outfile<<"平時(shí)成績(jī):\n"<<"|"<<setw(9)<<(*stu).mun<<"|"<<setw(6)<<(*stu).name<<"|"<<setw(4)<<(*stu).sc1.yw<<"|"<<setw(4)<<(*stu).sc1.sx<<"|"<<setw(4)<<(*stu).sc1.yy<<"|"<<setw(4)<<(*stu).sc1.wl<<"|"<<setw(4)<<(*stu).sc1.hx<<"|"<<setw(4)<<(*stu).sc1.sw<<endl;outfile<<"期末成績(jī):\n"<<"|"<<setw(9)<<(*stu).mun<<"|"<<setw(6)<<(*stu).name<<"|"<<setw(4)<<(*stu).sc2.yw<<"|"<<setw(4)<<(*stu).sc2.sx<<"|"<<setw(4)<<(*stu).sc2.yy<<"|"<<setw(4)<<(*stu).sc2.wl<<"|"<<setw(4)<<(*stu).sc2.hx<<"|"<<setw(4)<<(*stu).sc2.sw<<endl;outfile<<"總評(píng)成績(jī):\n"<<"|"<<setw(9)<<(*stu).mun<<"|"<<setw(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)<<(*stu).sc3.hx<<"|"<<setw(4)<<(*stu).sc3.sw<<endl;amount++;stu=stu->next;}break;}cout<<"成功將學(xué)生數(shù)據(jù)保存到<總評(píng)成績(jī).txt>中!";outfile.close();}voidinput(student*head){charc;intj=0;student*p=head;file[j]=newofstream("F:\\課設(shè)\\總評(píng)成績(jī).txt",ios::app);do{student*stu=newstudent;cout<<"請(qǐng)輸入學(xué)號(hào)(12位數(shù)字):"<<setw(12);cin>>(*stu).mun;cout<<"請(qǐng)輸入姓名:"<<setw(20);cin>>(*stu).name;cout<<"請(qǐng)輸入C++成績(jī)(平時(shí)成績(jī)和期末成績(jī)):"<<setw(2);cin>>(*stu).sc1.yw>>(*stu).sc2.yw;cout<<"請(qǐng)輸入信息資源管理成績(jī)(平時(shí)成績(jī)和期末成績(jī)):"<<setw(2);cin>>(*stu).sc1.sx>>(*stu).sc2.sx;cout<<"請(qǐng)輸入英語(yǔ)成績(jī)(平時(shí)成績(jī)和期末成績(jī)):"<<setw(2);cin>>(*stu).sc1.yy>>(*stu).sc2.yy;cout<<"請(qǐng)輸入馬克思成績(jī)(平時(shí)成績(jī)和期末成績(jī)):"<<setw(2);cin>>(*stu).sc1.wl>>(*stu).sc2.wl;cout<<"請(qǐng)輸入形勢(shì)政策成績(jī)(平時(shí)成績(jī)和期末成績(jī)):"<<setw(2);cin>>(*stu).sc1.hx>>(*stu).sc2.hx;cout<<"請(qǐng)輸入概率成績(jī)(平時(shí)成績(jī)和期末成績(jī)):"<<setw(2);cin>>(*stu).sc1.sw>>(*stu).sc2.sw;(*stu).sc3.yw=((*stu).sc1.yw)*0.30+((*stu).sc2.yw)*0.70;//總成績(jī)計(jì)算(*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;p->next=stu;amount++;cout<<"數(shù)據(jù)錄入成功,想繼續(xù)錄入嗎(y/n)";cin>>c;p=p->next;while(c!='y'&&c!='n'){cout<<"指令錯(cuò)誤<請(qǐng)輸入y/n!>!!!!!!"<<endl;cout<<"數(shù)據(jù)錄入成功,想繼續(xù)錄入嗎(y/n)";cin>>c;}}while(c=='y');j++;cout<<"輸入了"<<amount<<"個(gè)學(xué)生的信息."<<endl;}voidsearch1(student*head)//姓名查詢{charc;stringname;do{student*stu=head->next;boolflag=0;cout<<"請(qǐng)輸入你要查詢的學(xué)生姓名:";cin>>name;do{if(stu!=NULL&&name==(*stu).name)//輸出總成績(jī){flag=1;cout<<"您要查詢的學(xué)生是:"<<stu->name<<endl;cout<<"|學(xué)號(hào)|姓名|C++|信息資源管理|英語(yǔ)|馬克思|形勢(shì)政策|概率|"<<endl;cout<<"|"<<setw(12)<<(*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<<"|"<<setw(4)<<(*stu).sc3.wl;cout<<"|"<<setw(4)<<(*stu).sc3.hx;cout<<"|"<<setw(4)<<(*stu).sc3.sw;cout<<"|"<<endl;}stu=stu->next;}while(stu!=NULL);if(flag==0)cout<<"對(duì)不起!您要查詢的學(xué)生不存在!!!!!!!"<<endl;cout<<"您想繼續(xù)查詢嗎?(y/n)";cin>>c;while(c!='y'&&c!='n'){cout<<"指令錯(cuò)誤<請(qǐng)輸入y/n!>!!!!!!!"<<endl;cout<<"您想繼續(xù)查詢嗎?(y/n)";cin>>c;}}while(c=='y');}voidsearch2(student*head)//學(xué)號(hào)查詢{charc;stringno;do{student*stu=head->next;intflag=0;cout<<"請(qǐng)輸入你要查詢的學(xué)生學(xué)號(hào):";cin>>no;do{if(stu!=NULL&&no==(*stu).mun){flag=1;cout<<"您要查詢的學(xué)生是:"<<stu->name<<endl;cout<<"|學(xué)號(hào)|姓名|C++|信息資源管理|英語(yǔ)|馬克思|形勢(shì)政策|概率|"<<endl;cout<<"|"<<setw(9)<<(*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<<"|"<<setw(4)<<(*stu).sc3.wl;cout<<"|"<<setw(4)<<(*stu).sc3.hx;cout<<"|"<<setw(4)<<(*stu).sc3.sw;cout<<"|"<<endl;}stu=stu->next;}while(stu!=NULL);if(flag==0)cout<<"對(duì)不起!您要查詢的學(xué)生不存在!!!!!!!"<<endl;cout<<"您想繼續(xù)查詢嗎?(y/n)";cin>>c;while(c!='y'&&c!='n'){cout<<"指令錯(cuò)誤<請(qǐng)輸入y/n!>!!!!!!!"<<endl;cout<<"您想繼續(xù)查詢嗎?(y/n)"<<endl;cin>>c;}}while(c=='y');}voidchange(student*head){stringname;charc;do{boolflag2=0;student*stu=head;scoresc1;scoresc2;scoresc3;cout<<"請(qǐng)輸入您要修改的學(xué)生的姓名:";cin>>name;do{if(name==(*stu).name){flag2=1;cout<<"請(qǐng)輸入新的.C++.成績(jī)(平時(shí)成績(jī)和期末成績(jī)):";cin>>sc1.yw>>sc2.yw;cout<<"請(qǐng)輸入新的.信息資源管理.成績(jī)(平時(shí)成績(jī)和期末成績(jī)):";cin>>sc1.sx>>sc2.sx;cout<<"請(qǐng)輸入新的.英語(yǔ).成績(jī)(平時(shí)成績(jī)和期末成績(jī)):";cin>>sc1.yy>>sc2.yy;cout<<"請(qǐng)輸入新的.馬克思.成績(jī)(平時(shí)成績(jī)和期末成績(jī)):";cin>>sc1.wl>>sc2.wl;cout<<"請(qǐng)輸入新的.形勢(shì)政策.成績(jī)(平時(shí)成績(jī)和期末成績(jī)):";cin>>sc1.hx>>sc2.hx;cout<<"請(qǐng)輸入新的.概率.成績(jī)(平時(shí)成績(jī)和期末成績(jī)):";cin>>sc1.sw>>sc2.sw;sc3.yw=sc1.yw*0.30+sc2.yw*0.70;//總成績(jī)計(jì)算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<<"|學(xué)號(hào)|姓名|C++|信息資源管理|英語(yǔ)|馬克思|形勢(shì)政策|概率|"<<endl;cout<<"|"<<setw(9)<<(*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<<"|"<<setw(4)<<(*stu).sc3.wl;cout<<"|"<<setw(4)<<(*stu).sc3.hx;cout<<"|"<<setw(4)<<(*stu).sc3.sw;cout<<"|"<<endl;cout<<"數(shù)據(jù)修改成功!\n";break;}stu=stu->next;}while(stu!=NULL);if(flag2==0){cout<<"對(duì)不起!您要修改的學(xué)生不存在!請(qǐng)檢查重新輸入!!!!!!!"<<endl;}cout<<"想繼續(xù)修改嗎?(y/n)";cin>>c;if(c!='y'&&c!='n'){cout<<"指令錯(cuò)誤!請(qǐng)重新輸入<y/n>!!!!!!!";cin>>c;}}while(c=='y');}voidshanchu(student*head)//學(xué)號(hào){charc;stringno;do{intflag=0;cout<<"請(qǐng)輸入你要?jiǎng)h除的學(xué)生學(xué)號(hào):";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<<"對(duì)不起!您要?jiǎng)h除的學(xué)生不存在!!!!!!!"<<endl;cout<<"您想繼續(xù)刪除嗎?(y/n)";cin>>c;while(c!='y'&&c!='n'){cout<<"指令錯(cuò)誤<請(qǐng)輸入y/n!>!!!!!!!"<<endl;cout<<"您想繼續(xù)刪除嗎?(y/n)";cin>>c;}}while(c=='y');}voidget(student*head){student*p;p=head;intj=0;stringno;cout<<"請(qǐng)輸入您想提取的入學(xué)年份+在讀年級(jí)+在讀班級(jí)的編號(hào)(7位數(shù)字):";cin>>no;while(p->next!=NULL){if(no==(p->next->mun).substr(0,7)){cout<<"管理系統(tǒng)有您要提取的信息!"<<endl;j=1;}elsep=p->next;if(j==1)break;}if(j==1){intc,m=0;stringb,b1,e,subject[6]={"yuwen","shuxue","yinyu","wuli","huaxue","shengwu"};stringkemu[6]={"C++","信息資源管理","英語(yǔ)","馬克思","形勢(shì)政策","概率"};cout<<"輸入您想提取的科目代碼:"<<endl;cout<<"1-->C++2-->信息資源管理3-->英語(yǔ)"<<endl;cout<<"4-->馬克思5-->形勢(shì)政策6-->概率"<<endl;cout<<"選擇:";cin>>c;stringcla="class";e=no.substr(6,1);b1=cla+e;b=b1+subject[c-1];char*f=newchar[20];for(inti=0;i<20;i++)f[i]=b[i];f=strcat(f,".txt");ofstreamo
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度企業(yè)項(xiàng)目管理顧問合同3篇
- 2025年度公司員工數(shù)字化轉(zhuǎn)型合伙協(xié)議2篇
- 2025年度電子商務(wù)平臺(tái)勞務(wù)合作合同
- 二零二五年度農(nóng)業(yè)勞務(wù)用工服務(wù)合同范本(含農(nóng)業(yè)綠色防控技術(shù))3篇
- 二零二五年度環(huán)保項(xiàng)目融資抵押合同3篇
- 二零二五年度農(nóng)村林地林業(yè)工程承包合同書
- 2025年度公司個(gè)人借款合同社會(huì)責(zé)任及可持續(xù)發(fā)展協(xié)議3篇
- 二零二五年度養(yǎng)老服務(wù)行業(yè)員工勞動(dòng)合同范本3篇
- 2025年度農(nóng)村自建房拆除與重建一體化服務(wù)協(xié)議合同書
- 二零二五年度文化場(chǎng)館租賃及活動(dòng)組織合同3篇
- 2024年廣東省廣州市黃埔區(qū)中考一模語(yǔ)文試題及答案
- 公路施工表格
- 飯?zhí)脪炜繀f(xié)議合同范本
- 2023-2024學(xué)年遼寧省重點(diǎn)高中沈陽(yáng)市郊聯(lián)體高二上學(xué)期期末考試生物試題(解析版)
- 借款分期還款合同
- 醫(yī)學(xué)史第三版重點(diǎn)
- 2024版建行借款合同范本
- CQI-8分層過程審核指南(附全套表格)
- 教科版五年級(jí)上冊(cè)科學(xué)期末測(cè)試卷及參考答案(完整版)
- 江西省九江市一中2023-2024學(xué)年下學(xué)期八年級(jí)期中物理試卷
- 物理化學(xué)英語(yǔ)詞匯
評(píng)論
0/150
提交評(píng)論