會(huì)員積分管理系統(tǒng)_第1頁
會(huì)員積分管理系統(tǒng)_第2頁
會(huì)員積分管理系統(tǒng)_第3頁
會(huì)員積分管理系統(tǒng)_第4頁
會(huì)員積分管理系統(tǒng)_第5頁
免費(fèi)預(yù)覽已結(jié)束,剩余11頁可下載查看

下載本文檔

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

文檔簡介

1、#include"stdio.h"/*頭文件名*/#include"string.h"#include"malloc.h"*/#defineLENsizeof(structmessage_vip)/*一個(gè)結(jié)構(gòu)體數(shù)組元素的長度#definenumsubs4/*年份數(shù)目*/typedefstructmessage_vip/*結(jié)構(gòu)體定義*/charnumber6;charname20;charsex4;floatyearnumsubs;floatscore;floataverage;intindex;vip;externintnumhuis

2、;/*會(huì)員數(shù)目*/externvip*pointer;/*指向結(jié)構(gòu)體數(shù)組*/externintlens;intmenu_select();/*函數(shù)聲明*/intopenfile(viphui);intfindrecord(viphuiy);intwritetotext(viphuiy);voidwelcome();voiddisplay1();voidshowtable();voidsort(viphui);voiddeleterecord(viphui,inti);voidaddrecord(viphuiy);voiddisplay(viphuiy,intn1,intn2);voidamen

3、drecord(viphuiy);voidcount(viphuiy);voidsortnum(viphuiy);voidsortnum2(viphuiy);voidsortname(viphuiy);voidsortname2(viphuiy);voidsortcount(viphuiy);voidsortcount2(viphuiy);voidstatistic(viphuiy);voiddisplay1();#include"stdio.h"intmenu_select()/*界面顯示*/charc;printf("nn");printf(&quo

4、t;|1.增加會(huì)員記錄5.統(tǒng)計(jì)信息|n");printf("|2.查詢會(huì)員記錄6.打開文件|n");printf("|3.修改會(huì)員記錄7.保存義件|n");printf("|4.會(huì)員紀(jì)錄排序8.顯示記錄|n");printf("|0.退出系統(tǒng)|n"printf("nn");printf("請選擇(0-8):");c=getchar();getchar();return(c-'0');#include"stdio.h"intfind

5、record(viphuiy)/*查找信息*/charstr2;inti,num;if(numhuis=0)printf("沒有可被查找的記錄n");return-1;elseprintf("請輸入編號:");gets(str);for(i=0;i<=numhuis;i+)if(strcmp(str,huiyi.number)=0)display(huiy,i,i);break;if(i>numhuis)(printf("沒有查找所要的信息。n");return-1;)returni;)#include"stdi

6、o.h"intopenfile(viphui)/*保存文件*/(inti=0,j;FILE*fp;charfilename20,str2;if(numhuis!=0)(?(y/n)");printf("已經(jīng)有記錄存在,是否保存gets(str);if(str0='y'|str0='Y')writetotext(hui);)printf("請輸入文件名:");gets(filename);numhuis=0;if(fp=fopen(filename,"rb+")=NULL)(printf(&qu

7、ot;無法打開該文件n");return(-1);)fscanf(fp,"%d",&numhuis);fgetc(fp);while(i<numhuis)(fscanf(fp,"%s",huii.number);fscanf(fp,"%s",);fscanf(fp,"%s",huii.sex);for(j=0;j<numsubs;j+)fscanf(fp,"%f",&huii.yearj);fscanf(fp,"%f",

8、&huii.score);fscanf(fp,"%f",&huii.average);fscanf(fp,"%d",&huii.index);i+;)fclose(fp);printf("文件讀取成功n");printf("是否顯示紀(jì)錄?(y/n)");gets(str);if(str0='y'|str0='Y')display(hui,0,numhuis-1);return(0);#include"stdio.h"voidsort(vip

9、huiy)/*排序文件*/inti,j=0;charstr5;vip*p;p=huiy;if(numhuis=0)printf("沒有可供查詢的記錄!");while(1)for(i=0;i+)n");printf("請輸入查詢方式:");printf("(直接輸入回車則結(jié)束查詢操作)printf("1.按照編號t");gets(str);if(strlen(str)=0)break;if(str0='1')printf("請輸入排序次序:n");printf("1.升

10、序排列t");printf("2.降序排列n");gets(str);if(str0='1')sortnum2(p);elsesortnum(p);display(huiy,0,numhuis-1);elseprintf("請輸入1");printf("是否退出排序?(y/n)");gets(str);if(str0='y'|str0='Y')break;)return;)voidsortnum(viphuiy)inti,j;viptemp;vip*p;p=huiy;for(i

11、=0;i<numhuis;i+)for(j=0;j<numhuis-i-1;j+)if(strcmp(huiyj+1.number,huiyj.number)>0)temp=*(p+j);*(p+j)=*(p+j+1);*(p+j+1)=temp;)voidsortnum2(viphuiy)inti,j;viptemp;vip*p;p=huiy;for(i=0;i<numhuis;i+)for(j=0;j<numhuis-i-1;j+)if(strcmp(huiyj.number,huiyj+1.number)>0)temp=*(p+j);*(p+j)=*(

12、p+j+1);*(p+j+1)=temp;#include"stdio.h"voidstatistic(viphuiy)/*輸出統(tǒng)計(jì)信息*/(inti,j=0,k=0;charc1,str2;floataveragenumsubs,sum=0;if(numhuis=0)printf("沒有可被查找的記錄n");else(while(1)(printf("下面將統(tǒng)計(jì)積分n");printf("請選擇你要統(tǒng)計(jì)哪年的積分1.12年t2.13年t3.14年t4.15年n");c1=getchar();printf(&quo

13、t;t一共有個(gè)d記錄n",numhuis);/*總共記錄數(shù)*/switch(c1)(case'1':for(i=0;i<numhuis;i+)/*循環(huán)輸入判斷*/(sum+=huiyi.year0;if(huiyj.year0<huiyi.year0)j=i;)average0=sum/numhuis;printf("t積分12年的最高分:n");/*最高分*/printf("tt編號:%s姓名:%s分?jǐn)?shù):%.2fn",huiyj.number,,huiyj.year0);break;case&#

14、39;2':for(i=0;i<numhuis;i+)/*循環(huán)輸入判斷*/(sum+=huiyi.year1;if(huiyj.year1<huiyi.year1)j=i;)average1=sum/numhuis;printf("t積分13年的最高分:n");/*最高分*/printf("tt編號:%s姓名:%s分?jǐn)?shù):%.2fn",huiyj.number,,huiyj.year1);break;case'3':for(i=0;i<numhuis;i+)/*循環(huán)輸入判斷*/sum+=huiy

15、i.year2;if(huiyj.year2<huiyi.year2)j=i;average2=sum/numhuis;printf("t積分14年的最高分:n");/*最高分*/printf("tt編號:%s姓名:%s分?jǐn)?shù):%.2fn",huiyj.number,,huiyj.year2);break;case'4':for(i=0;i<numhuis;i+)/*循環(huán)輸入判斷*/sum+=huiyi.year3;if(huiyj.year3<huiyi.year3)j=i;average3=sum/

16、numhuis;printf("t積分15年的最高分:n");/*最高分*/printf("tt編號:%s姓名:%s分?jǐn)?shù):%.2fn",huiyj.number,,huiyj.year3);break;default:printf("輸入錯(cuò)誤!請輸入14之間的數(shù)n");sum=0;getchar();printf("是否繼續(xù)進(jìn)行統(tǒng)計(jì)?(y/n)");gets(str);if(str0='y'|str0='Y');elsebreak;#include"st

17、dio.hintwritetotext(viphuiy)/*將所有記錄寫入文件*/(inti=0,j;FILE*fp;charfilename20;printf("輸入文件名稱:");gets(filename);fp=fopen(filename,"w");fprintf(fp,"%dn",numhuis);while(i<numhuis)(fprintf(fp,"%s%s%s",huiyi.number,,huiyi.sex);for(j=0;j<numsubs;j+)fprin

18、tf(fp,"%f",huiyi.yearj);fprintf(fp,"%f%f%d",huiyi.score,huiyi.average,huiyi.index);i+;fclose(fp);printf("已成功存儲!n");display(huiy,0,numhuis-1);numhuis=0;return0;#include"stdio.hvoidwelcome()printf("t*n");voidshowtable()(printf("n");printf("編號

19、tt姓名t性別t12年t13年t14年t15年t總分tn");printf("n");voiddisplay(viphuiy,intn1,intn2)(inti;showtable();/*顯示表頭*/for(i=n1;i<=n2;i+)printf("%stt%st%st%.2ft%.2ft%.2ft%.2ft%.2ftn",huiyi.number,,huiyi.sex,huiyi.year0,huiyi.year1,huiyi.year2,huiyi.year3,huiyi.year4,huiyi.score,h

20、uiyi.average,huiyi.index);/*通過循環(huán)輸出數(shù)據(jù)*/voiddisplay1()printf("nn");getchar();#include"stdio.h"#include<string.h>voidamendrecord(viphuiy)charpassword10;again:printf("請輸入密碼:");scanf("%s",password);if(strcmp(password,"123")=0)printf("密碼確認(rèn)!!n&qu

21、ot;);printf("請修改!n");elseprintf("密碼不正確,請重新輸入!n");gotoagain;charstr5;/*供用戶輸入*/inti=-1,j;if(numhuis=0)/*沒有記錄返回*/printf("沒有可供修改的記錄!");while(i<0)i=findrecord(huiy);if(i>=0)printf("要?jiǎng)h除這個(gè)會(huì)員的信息嗎?(y/n)");gets(str);if(str0='y'|str0='Y')(deletereco

22、rd(huiy,i);count(huiy);)else(printf("確定要修改這個(gè)會(huì)員的信息嗎?(y/n)");gets(str);if(str0='y'|str0='Y')(printf("下面請重新輸入會(huì)員的信息:n");printf("請輸入編號:n");gets(huiyi.number);printf("請輸入姓名:n");gets();printf("請輸入性別(男/女1/0):n");gets(str);if(str0=&#

23、39;0')strcpy(huiyi.sex,"女");elsestrcpy(huiyi.sex,"男");huiyi.score=0;printf("請按順序輸入積分:");for(j=0;j<numsubs;j+)(scanf("%f",&huiyi.yearj);huiyi.score+=huiyi.yearj;)getchar();huiyi.average=huiyi.score/numsubs;)count(huiy);)display(huiy,0,numhuis-1);)pri

24、ntf("是否繼續(xù)進(jìn)行其他修改?(y/n)n");gets(str);if(str0='y'|str0='Y')i=-1;elsei=1;)voiddeleterecord(viphui,inti)/*刪除信息*/(intj;while(i>=0)(for(j=i;j<numhuis;j+)huij=huij+1;numhuis-;printf("刪除成功!n");voidcount(viphuiy口)(inti,j;for(i=0;i<numhuis;i+)(huiyi.index=1;for(j=0;

25、j<numhuis;j+)if(huiyj.score>huiyi.score)huiyi.index+;#include"stdio.h"voidaddrecord(viphuiy)(inti=0,j,num;charstr4;printf("請輸入增加的會(huì)員信息條目數(shù):");scanf("%d",&num);if(i=0)numhuis=num;elsenumhuis+=num;if(numhuis>lens)(lens+=50;pointer=(vip*)realloc(pointer,lens*LEN

26、);printf("請輸入會(huì)員信息:n");for(;i<numhuis;i+)(getchar();printf("請輸入編號:n");gets(pointeri.number);printf("請輸入姓名:n");gets();printf("請輸入性別(男/女1/0):");gets(pointeri.sex);if(pointeri.sex0='0')strcpy(pointeri.sex,"女");elsestrcpy(pointeri.

27、sex,"男");printf("請輸入各年積分:(按12年,13年,14年,15年的順序):n");huiyi.score=0;for(j=0;j<numsubs;j+)scanf("%f",&huiyi.yearj);/*計(jì)算總分*/huiyi.score+=huiyi.yearj;count(huiy);/*附名次*/display(huiy,0,numhuis-1);getchar();#include"stdio.h"intnumhuis;intlens;vip*pointer;voidma

28、in()inti=1;charstr2;lens=100;pointer=(vip*)malloc(lens*LEN);/*分配內(nèi)存*/numhuis=0;welcome。;/*歡迎界面*/while(i>0)i=menu_select();/*控制菜單*/switch(i)case1:addrecord(pointer);break;/*增加會(huì)員信息*/case2:findrecord(pointer);break;/*查詢會(huì)員信息*/case3:amendrecord(pointer);break;/*修改會(huì)員信息*/case4:sort(pointer);break;/*會(huì)員信息排

29、序*/case5:statistic(pointer);break;/*統(tǒng)計(jì)信息*/case6:openfile(pointer);break;/*打開文件*/case7:writetotext(pointer);break;/*保存文件*/case8:display(pointer,0,numhuis-1);break;/*顯示記錄*/case0:if(numhuis!=0)printf("是否保存當(dāng)前記錄?(y/n)");gets(str);if(str0='y'|str0='Y')writetotext(pointer);i=-1;br

30、eak;/*退出系統(tǒng)*/default:printf("請輸入數(shù)字08:n");i=1;/*輸入錯(cuò)誤*/printf("tt歡迎再次使用本系統(tǒng)。nn");display1();程序結(jié)果如下:IL增加會(huì)員記錄5.統(tǒng)計(jì)信息|I2.查詢會(huì)員記錄6.打開文件|I3.修改會(huì)員記錄7.保存文件II4.會(huì)員紀(jì)錄排序&顯示記錄|I0.退出系統(tǒng)I請選擇(0-8):D:dSragDebuggg.exe"I1.增加會(huì)員記錄5.統(tǒng)計(jì)信息|2 .查詢會(huì)員記錄6.打開文件|3 .修改會(huì)員記錄7.保存文件|4 .會(huì)員紀(jì)錄排序8.顯示記錄|I0.退出系統(tǒng)I請選擇(0-

31、8):1請輸入增加的會(huì)員信息條目數(shù):3請輸入會(huì)員信息:請輸入編號:1情輸入姓名:張請輸入性別(男/女1/0):1請輸入各年積分:(技12年,13年,14年,15年的收序):23345667567請輸入編號::育輸入姓名:李二請輸入性別(男/女1/0):0請輸入各年積分:(按12年,13年,14年,15年的順序):12345*D:deWfgDebuggg.exe"、o|男女男二山張李黃233.0012.0012.00456.00345.002324.0067.0056.00243.00567.00455.004323.001323.00868.006902.002 .3 .4 .增加會(huì)員記錄查詢會(huì)員記錄修改會(huì)員記錄會(huì)員紀(jì)錄排序I0.退出系統(tǒng)I5 .統(tǒng)計(jì)信息I6 .打開文件|7 .保存文件|8 .顯示記錄I:2編號姓名性別12年13年14年15年總分黃山男12 .002324.00243.00432

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論