C++歌手大獎賽管理系統(tǒng)_第1頁
C++歌手大獎賽管理系統(tǒng)_第2頁
C++歌手大獎賽管理系統(tǒng)_第3頁
已閱讀5頁,還剩4頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、ude<iostrea#include<string>#include<fstream>#include<iomanip>usingnamespacestd;歌手類的定義classsinger/(protected:編號姓名性別參賽曲目/選送單位比賽項目名稱比賽時間比賽地點intno;/charname20;/charsex10;/intage;/年齡charsong20;/chardepartment30;charprogram30;/chartime20;/intscore;/singer*mynext;/public:singer();/char

2、place20;/比賽成績指向下一個歌手的指針歌手類無參構(gòu)造函數(shù)的定義歌手類singer(intpnum,charpname,charpsex,intpage,charpsong,charpdepart,charprogram,chartime,charplace,intscore);/有參構(gòu)造函數(shù)的定義singer(intpnum,charpname,charpsex,intpage,charpsong,charpdepart,charprogram,chartime,charplace,intscore,singer*next);/歌手類有參構(gòu)造函數(shù)的定義intgetnum();/提取歌手

3、編號函數(shù)的定義char*getname();/提取歌手名字函數(shù)的定義char*getsex();/提取歌手性別函數(shù)的定義intgetage();/提取歌手年齡函數(shù)的定義voidgetagee(intas);/voidgetscoree(intak);設(shè)置歌手年齡函數(shù)的定義char*getsong();/提取員歌手參賽曲目函數(shù)的定義char*getdepart();/提取歌手選送單位函數(shù)的定義char*getprogram();/提取比賽項目名稱函數(shù)的定義char*gettime();/提取比賽時間函數(shù)的定義char*getplace();/提取比賽地點函數(shù)的定義intgetscore();/提

4、取比賽成績函數(shù)的定義singer*getnext();/提取指向下一個歌手指針函數(shù)的定義voidsetnext(singer*next);/設(shè)置指向下一個歌手指針函數(shù)的定義voidoutput1();/輸出歌手信息函數(shù)的定義voidoutput2();/輸出賽事信息函數(shù)的定義voidoutput();/輸出全部信息函數(shù)的定義;singer:singer()/歌手類無參構(gòu)造函數(shù)(no=0;strcpy(name,"");strcpy(sex,"");age=0;strcpy(song,"");strcpy(department,&quo

5、t;");strcpy(program,"");strcpy(time,"");strcpy(place,"");score=0;mynext=NULL;singer:singer(intpnum,charpname,charpsex,intpage,charpsong,charpdepart,charpprogram,charptime,charpplace,intpscore)/歌手類有參構(gòu)造函數(shù)(no=pnum;strcpy(name,pname);strcpy(sex,psex);age=page;strcpy(so

6、ng,psong);strcpy(department,pdepart);strcpy(program,pprogram);strcpy(time,ptime);strcpy(place,pplace);score=pscore;mynext=NULL;singer:singer(intpnum,charpname,charpsex,intpage,charpsong,charpdepart,charpprogram,charptime,charpplace,intpscore,singer*next)/歌手類有參構(gòu)造函數(shù)(no=pnum;strcpy(name,pname);strcpy(s

7、ex,psex);age=page;strcpy(song,psong);strcpy(department,pdepart);strcpy(program,pprogram);strcpy(time,ptime);strcpy(place,pplace);score=pscore;mynext=next;intsinger:getnum()(returnno;char*singer:getname()(returnname;char*singer:getsex()(returnsex;char*singer:getsong()(returnsong;char*singer:getdepart

8、()(returndepartment;intsinger:getage()(returnage;char*singer:getprogram()(returnprogram;char*singer:gettime()(returntime;char*singer:getplace()(returnplace;intsinger:getscore()(returnscore;voidsinger:getagee(intas)(age=as;voidsinger:getscoree(intak)score=ak;voidsinger:setnext(singer*next)mynext=next

9、;singer*singer:getnext()returnmynext;voidsinger:output1()cout<<"編號:"<<no<<endl;cout<<”姓名:"<<name<<endl;cout<<"性別:"<<sex<<endl;cout<<"年齡:"<<age<<endl;cout<<"參賽歌曲:"<<song<

10、;<endl;cout<<"選送單位:"<<department<<endl;voidsinger:output2()cout<<"比賽項目:"<<program<<endl;cout<<”姓名:"<<name<<endl;cout<<"比賽時間:"<<time<<endl;cout<<"比賽地點:"<<place<<en

11、dl;cout<<"得分:"<<score<<endl;voidsinger:output()cout<<"編號:"<<no<<endl;cout<<”姓名:"<<name<<endl;cout<<"性別:"<<sex<<endl;cout<<"年齡:"<<age<<endl;cout<<"參賽歌曲:&qu

12、ot;<<song<<endl;cout<<"選送單位:"<<department<<endl;cout<<"比賽項目:"<<program<<endl;cout<<"比賽時間:"<<time<<endl;cout<<"比賽地點:"<<place<<endl;cout<<"得分:"<<score<&l

13、t;endl;classoperate:publicsinger(private:singer*myfirst;/指向歌手鏈表中結(jié)點的指針public:operate();/operate類無參構(gòu)造函數(shù)的定義operate(intnnum,charnname,charnsex,intnage,charnsong,charndepart,charnprogram,charntime,charnplace,intnscore);operate();/operate類析構(gòu)函數(shù)的定義voidload();/從文件中加載歌手信息voidadd();/增加歌手信息voidinput(intnumber);

14、/鍵盤輸入新歌手基本信息voidinsert(intnnum,charnname,charnsex,intnage,charnsong,charndepart,charnprogram,charntime,charnplace,intnscore);boolfindnum();/boolfindprogram();boolmodify();/booldeletesinger();voidsave();/voidshowa();/voidshowb();/按編號查詢歌手信息/按項目名稱查詢賽事信息修改歌手信息/刪除歌手信息歌手信息存盤顯示所有歌手信息顯示比賽賽事。;類無參構(gòu)造函數(shù)的實現(xiàn)opera

15、te:operate()/operate(myfirst=NULL;類帶operate:operate(intnnum,charnname,charnsex,intnage,charnsong,charndepart,charnprogram,charntime,charnplace,intnscore)/operate參數(shù)構(gòu)造函數(shù)的實現(xiàn)(myfirst=newsinger(nnum,nname,nsex,nage,nsong,ndepart,nprogram,ntime,nplace,nscore);operate:operate()/operate類析構(gòu)函數(shù)的實現(xiàn)(singer*next=

16、myfirst,*temp;while(next!=NULL)(temp=next;next=next->getnext();deletetemp;myfirst=NULL;voidoperate:load()/從文件中加載歌手信息(intnnum,nage;floatnscore;charnname20,nsex20,nsong20,ndepart20,nprogram20,ntime20,nplace20;ifstreamf1("singer.txt”,ios:in);while(f1.good()f1>>nnum>>nname>>nse

17、x>>nage>>nsong>>ndepart>>nprogram>>ntime>>nplace>>nscore;if(!(f1.eof()insert(nnum,nname,nsex,nage,nsong,ndepart,nprogram,ntime,nplace,nscore);f1.close();cout<<endl<<”存儲在文件中的學(xué)校人員信息已加載到系統(tǒng)中”<<endl;voidoperate:add()/增加新歌手intnum,n1,n2;singer*p=m

18、yfirst;if(p=NULL)cout<<"目前無歌手,請輸入新歌手的編號:"cin>>num;input(num);elseif(p->getnext()=NULL)n1=p->getnum()+1;input(n1);elsewhile(p->getnext()!=NULL)p=p->getnext();n2=p->getnum()+1;input(n2);voidoperate:input(intnumber)/鍵盤輸入新歌手基本信息intnage;intnscore;charnname20,nsex20,ns

19、ong20,ndepart20,nprogram20,ntime20,nplace20;cout<<"請輸入編號為"<<number<<"的歌手信息"<<endl;cout<<"輸入姓名:"cin>>nname;cout<<"輸入性別:"cin>>nsex;cout<<"輸入年齡:"cin>>nage;cout<<"輸入?yún)①惛枨?quot;cin>

20、>nsong;cout<<"選送單位:"cin>>ndepart;cout<<"比賽項目:"cin>>nprogram;cout<<"比賽時間:"cin>>ntime;cout<<"比賽地點:"cin>>nplace;cout<<"得分:"cin>>nscore;insert(number,nname,nsex,nage,nsong,ndepart,nprogram,nt

21、ime,nplace,nscore);voidoperate:insert(intnnum,charnname,charnsex,intnage,charnsong,charndepart,charnprogram,charntime,charnplace,intnscore)singer*p=myfirst;if(p=NULL)myfirst=newsinger(nnum,nname,nsex,nage,nsong,ndepart,nprogram,ntime,nplace,nscore);elsewhile(p->getnext()!=NULL)p=p->getnext();p

22、->setnext(newsinger(nnum,nname,nsex,nage,nsong,ndepart,nprogram,ntime,nplace,nscore,p->getnext();booloperate:findnum()/按編號查詢歌手信息intid;singer*s=myfirst;singer*f=s;cout<<"請輸入歌手的編號:"cin>>id;if(s=NULL)cout<<"本系統(tǒng)暫無歌手信息!"<<endl;returnfalse;elsewhile(s!=NUL

23、L)if(s->getnum()=id)s->output1();returntrue;else(f=s;s=s->getnext();cout<<"無此歌手信息!"<<endl;returnfalse;booloperate:findprogram()/按比賽項目查詢賽事信息(chartmpprogram20;singer*s=myfirst;singer*f=s;cout<<"請輸入比賽項目:"cin>>tmpprogram;if(s=NULL)(cout<<"本

24、系統(tǒng)暫無項目信息!"<<endl;returnfalse;else(while(s!=NULL)(if(strcmp(s->getprogram(),tmpprogram)=0)(s->output2();returntrue;f=s;s=s->getnext();cout<<"本系統(tǒng)無此項目信息!"<<endl;returnfalse;booloperate:modify()/修改歌手信息(intnumber;singer*s=myfirst;singer*f=s;cout<<"請輸入要

25、修改的歌手編號:"cin>>number;if(s=NULL)(cout<<"無此歌手!"<<endl;returnfalse;else(while(s!=NULL)(if(s->getnum()=number)(s->output();while(1)(inti;floattmpnumber;chartemp30;cout<<"請選擇要修改的歌手信息:"<<endl;cout<<"1:姓名2:性別3:年齡4:參賽曲目5:選送單位6:比賽項目7:比賽時

26、間8:比賽地點9:得分"<<endl;cout<<"請選擇(19)中的選項:"cin>>i;switch(i)case1:cout<<"輸入修改姓名:"cin>>temp;strcpy(s->getname(),temp);break;case2:cout<<"輸入修改性別:";cin>>temp;strcpy(s->getsex(),temp);break;case3:cout<<"輸入修改年齡:"

27、;cin>>tmpnumber;s->getagee(tmpnumber);break;case4:cout<<"輸入修改參賽歌曲:"cin>>temp;strcpy(s->getsong(),temp);break;case5:cout<<"輸入修改選送單位:"cin>>temp;strcpy(s->getdepart(),temp);break;case6:cout<<"輸入修改比賽項目:"cin>>temp;strcpy(s-&

28、gt;getprogram(),temp);break;case7:cout<<"輸入修改比賽時問:"cin>>temp;strcpy(s->gettime(),temp);break;case8:cout<<"輸入修改比賽地點:"cin>>temp;strcpy(s->getplace(),temp);break;case9:cout<<"輸入修改得分:"cin>>tmpnumber;s->getscoree(tmpnumber);break;

29、returntrue;elses=s->getnext();f=s;cout<<"沒有此編號的歌手!"<<endl;returnfalse;booloperate:deletesinger()/刪除歌手信息inti;singer*s=myfirst;singer*f=s;cout<<"請輸入要刪除歌手的編號:"cin>>i;if(s=NULL)cout<<"無歌手可以刪除"returnfalse;elseif(s->getnum()=i)myfirst=myfir

30、st->getnext();cout«"編號為”vvivv”的歌手已被刪除了!"«endl;deletes;returntrue;else(s=s->getnext();while(s!=NULL)if(s->getnum()=i)f->setnext(s->getnext();cout«"編號為”ivv”的成員已被刪除n"deletes;returntrue;f=s;s=s->getnext();cout«"要刪除的歌手不存在,無法刪除!"«end

31、l;returnfalse;voidoperate:save()/歌手信息存盤ofstreamf2("singer.txt",ios:out);singer*p=myfirst;while(p)f2«p->getnum()«"t"«p->getname()«"t"«p->getsex()«"t"«p->getage()<<"t"«p->getsong()«"

32、;t"«p->getdepart()«"t"«p->getprogram()«"t"«p->gettime()«"t"«p->getplace()«"t"«p->getscore«endl;p=p->getnext();f2.close();cout«"保存數(shù)據(jù)已經(jīng)完成"«endl;singer*s=myfirst;cout

33、1;setw(8)«"voidoperate:showa()/顯示所有歌手信息編#"«setw(8)«"姓名"«setw(8)«"性別"«setw(8)«"<<setw(10)<<"參賽曲H"<<setw(12)<<"選送單位"<<endl;while(s!=NULL)(cout<<setw(8)<<s->getnum()<

34、;<setw(8)<<s->getname()<<setw(8)<<s->getsex()<<setw(8)<<s->getage()<<setw(10)<<s->getsong()<<setw(12)<<s->getdepart()<<endl;s=s->getnext();voidoperate:showb()/顯示所有賽事信息(singer*s=myfirst;cout<<setw(10)<<"

35、參賽項目"<<setw(12)<<"參賽時11H<<setw(12)<<H參賽地點"<<setw(12)<<"得分"<<endl;while(s!=NULL)(cout<<setw(10)<<s->getprogram()<<setw(12)<<s->gettime()<<setw(12)<<s->getplace()<<setw(12)<<s-&g

36、t;getscore()<<endl;s=s->getnext();voidmenu()/主菜單cout<<"|AAAAAAAAAAAAAAAAAAAAAAAAAAA<<endl;cout<<"*歡迎來到歌手信息管理系統(tǒng)*”endl;cout<<"*|*"<<endl;cout<<"*AAAAAAAAAAAAAAAAAAAAAAAAAAA*"<<endl;cout<<"*"<<endl;cout<<"*II操作:II*"<<endl;cout<<"*II1.歌手?jǐn)?shù)據(jù)錄入II*"<<endl;cout<<"*II2.增加新歌手II*

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論