为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

公交一卡通

2017-08-31 16页 doc 40KB 54阅读

用户头像

is_348212

暂无简介

举报
公交一卡通公交一卡通 #include #include #include #include struct card { int cnum; char pname[10]; int cmoney; int cbalance; int flag; }; typedef struct card C; void menu(); void readfile(C * card,int * num); void writefile(C *card,int num); void addnew(C * card,int * ...
公交一卡通
公交一卡通 #include #include #include #include struct card { int cnum; char pname[10]; int cmoney; int cbalance; int flag; }; typedef struct card C; void menu(); void readfile(C * card,int * num); void writefile(C *card,int num); void addnew(C * card,int * num); void logout(C * card,int * num); int findcard(C * card,int cardnumber,int num); void modify(C * card,int num); void readcard(C * card,int num); void savemoney(C * card,int num); void statmax(C * card,int num); void deldata(C * card,int * num); void displayone(C * card,int index); void displayall(C * card,int num); void exitout(C * card,int num); main() { C card[50]={0}; char choose='\0'; int num=0; menu(); readfile(card,&num); while(1) { clrscr(); printf("\n\n\n\n\n"); printf("\n\t\t|----------------------------|"); printf("\n\t\t|-----Please input (0-8)-----|"); printf("\n\t\t|----------------------------|"); printf("\n\t\t| 1.Add new Card |"); printf("\n\t\t| 2.Logout Card |"); printf("\n\t\t| 3.Modify Card |"); printf("\n\t\t| 4.Read Card |"); printf("\n\t\t| 5.Save money |"); printf("\n\t\t| 6.Stat.max money |"); printf("\n\t\t| 7.Display |"); printf("\n\t\t| 8.Delete Data File |"); printf("\n\t\t| 0.Exit |"); printf("\n\t\t|----------------------------|"); printf("\t\t\n"); scanf("%c",&choose); switch(choose) { case'1': addnew(card,&num); break; case'2': logout(card,&num); break; case'3': modify(card,num); break; case'4': readcard(card,num); break; case'5': savemoney(card,num); break; case'6': statmax(card,num); break; case'7': displayall(card,num); break; case'8': deldata(card,&num); break; case'0': exitout(card,num); break; default:printf("\n\tYou input error,please input again!"); getch(); } } } void menu() { clrscr(); printf("\n\t\t||=============================||"); printf("\n\t\t||-----------------------------||"); printf("\n\t\t||------ welcome --------||"); printf("\n\t\t||------ use bus traffic------||"); printf("\n\t\t||------ Card -----------||"); printf("\n\t\t||-----------------------------||"); printf("\n\t\t||=============================||"); getch(); } void readfile(C*card,int*num) { int i=0,cardnumber=0,cardmoney=0,balance=0,f=0; char personname[10]=""; FILE*fp=NULL; fp=fopen("d:\\card.dat","r"); if(fp==NULL) *num=0; else { fscanf(fp,"%d",&cardnumber); card[i].cnum=cardnumber; fscanf(fp,"%s",personname); strcpy(card[i].pname,personname); fscanf(fp,"%d",&cardmoney); card[i].cmoney=cardmoney; fscanf(fp,"%d",&balance); card[i].cbalance=balance; fscanf(fp,"%d",&f); card[i].flag=f; i++; while(feof(fp)==0) { fscanf(fp,"%d",&cardnumber); card[i].cnum=cardnumber; fscanf(fp,"%d",personname); strcpy(card[i].pname,personname); fscanf(fp,"%d",&cardmoney); card[i].cmoney=cardmoney; fscanf(fp,"%d",&balance); card[i].cbalance=balance; fscanf(fp,"%d",&f); card[i].flag=f; i++; } fclose(fp); *num=i; } } void writefile(C * card,int num) { int i=0; FILE*fp=NULL; fp=fopen("d:\\card.dat","w"); if(fp==NULL) { printf("\n\tSorry,file not open and not save all data.Now Exit."); getch(); exit(0); } else { for(i=0;i30) { printf("\n\tInput error.Please input again."); getch(); } else if(stops <=10) { ticket=1; symbol=1; } else if(stops <=15) { ticket=2; symbol=1; } else if(stops <=20) { ticket=3; symbol=1; } else if(stops <=25) { ticket=4; symbol=1; } else if(stops <=30) { ticket=5; symbol=1; } } if(card[f].cbalance >=ticket) { printf("\n\tBefore:"); displayone(card,f); card[f].cbalance-=ticket; printf("\n\tAfter:"); displayone(card,f); } else { printf("\n\tYour card balance money is not eoough.Please use cash."); getch(); } } } /*函数功能:续钱*/ void savemoney(C * card,int num) { int cardnumber=0,cardmoney=0,f=0; printf("\n\tPlease input yuor card money:"); scanf("%d",&cardnumber,num); f=findcard(card,cardnumber,num); if(f==-1) { printf("\n\tNo find the card."); getch(); } else { do { printf("\n\tPlease input you want to save money in the card:"); scanf("%d",&cardmoney); if(cardmoney<=0) printf("\n\tInput error.Please input again."); }while(cardmoney<=0); card[f].cmoney=cardmoney; card[f].cbalance+=cardmoney; printf("\n\tYour card have already saved money:%d.",cardmoney); displayone(card,f); } } /*函数功能:找续线最多的记录*/ void statmax(C * card,int num) { int i=0,maxindex=0; maxindex=0; for(i=1;i
/
本文档为【公交一卡通】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索