C语言水电费管理系统.docx
- 文档编号:17613482
- 上传时间:2023-07-27
- 格式:DOCX
- 页数:9
- 大小:15.43KB
C语言水电费管理系统.docx
《C语言水电费管理系统.docx》由会员分享,可在线阅读,更多相关《C语言水电费管理系统.docx(9页珍藏版)》请在冰点文库上搜索。
C语言水电费管理系统
C语言水电费管理系统
#include
#include
#include
#defineN100
#definew1.8//水1.8元/吨
#definee0.5//电0.5元/
structResidentinf
{
intnumber;//住户门牌号
charname[20];//户主姓名
float*wanum,*elnum;//用水(吨)、电(度)表示数
floatamonney,*emoney;//总共的水电费用,每月的水电费用
char*time;//收费时间
}Re[N];
intnum;//数据个数
Residentinf*p;//指向结构体的指针
voidAdddataFunc();voidStatisdataFunc();voidQuerydataFunc();
voidSavedataFunc();voidSortdataFunc();voidModifydataFunc();
voidScandataFunc();voidCaldataFunc();
//主函数
voidmain()
{
intsele;
sele=1;
while(sele)
{
system("cls");//清屏
printf("***********Main***********");
printf("**");
printf("*1:
住户登记*");
printf("**");
printf("*2:
统计*");
printf("**");
printf("*3:
排序*");
printf("**");
printf("*4:
删除*");
printf("**");
printf("*5:
查询*");
printf("**");
printf("*6:
修改*");
printf("**");
printf("*7:
退出*");
printf("****************************");
printf("ChooseFunction(1-7)[]\b\b");
scanf("%d",&sele);
switch(sele)
{
case1:
AdddataFunc();break;
case2:
StatisdataFunc();break;
case3:
SortdataFunc();break;
case4:
DeletedataFunc();break;
case5:
QuerydataFunc();break;
case6:
ModifydataFunc();break;
case7:
exit(0);
}
printf("\nPleasepressanykeytocontinue");
getchar();
getchar();
}
}
voidScandataFunc()
{
inti,j;
FILE*fp;
fp=fopen("Data.txt","r");
for(i=0;i { fscanf(fp,"%d%s%d",&(p+i)->number,(p+i)->name,&(p+i)->amoney); for(j=0;j<100;j++) fscanf(fp,"%d%d%d%s",&(p+i)->wanum,&(p+i)->elnum,&(p+i)->emoney,(p+i)->time); } fclose(fp); } voidCaldataFunc() { inti,j; fp=fopen("Data.txt","w"); for(i=0;i for(j=1;j<100;j++) { (p+i)->emoney[j]=((p+i)->wanum[j]-(p+i)->wanum[j-1])*w+((p+i)->elnum[j]-(p+i)->elnum[j-i])*e; (p+i)->amoney=0; (p+i)->amoney+=(p+i)->emoney; } SavedataFunc() } voidSavedataFunc() { FILE*fp; fp=fopen("Data.txt","w"); inti,j; for(i=0;i { fprintf(fp,"%d%s%d",(p+i)->number,(p+i)->name,(p+i)->amoney); for(j=0;j<100;j++) fprintf(fp,"%d%d%d%s",(p+i)->wanum,(p+i)->elnum,(p+i)->emoney,(p+i)->time); } fclose(fp); } voidAdddataFunc() { intn,i; Rere; printf("请输入新用户信息"); system("cls"); for(i=0;i { printf("\n\t\tnumber: "); scanf("%d",&re.number); (p+i)->number=re.number; printf("\n\t\tname: "); scanf("%s",re.name); strcpy((p+i)->name,re.name); for(j=0;j<100;j++) { printf("\n\t\twanum: "); scanf("%d",&re.wanum[j]); (p+i)->wanum=re.wanum; printf("\n\t\telnum: "); scanf("%d",&re.elnum[j]); (p+i)->elnum=re.elnum; printf("\n\t\t\ttime: "); scanf("%s",re.time[j]); strcpy((p+i)->time,re.time); } printf("\n登记完毕! \n");break; } SavedataFunc(); } voidSortdataFunc() { inti,j; Ret; for(i=0;i for(j=0;j if((p+i)->number<(p+j)->number) { t=(p+i);(p+i)=(p+j);(p+j)=t; } SavedataFunc(); } voidQuerydataFunc() { inti,n,j; Rere; system("cls"); puts("\t\t\t***************查询***************\n"); puts("\t\t\t**\n"); puts("\t\t\t*1.住户门牌号*\n"); puts("\t\t\t*2.户主姓名*\n"); puts("\t\t\t*3.日期*\n"); puts("\t\t\t**********************************\n"); printf("您想通过第[]种方式查询? \b\b"); scanf("%d",&n); switch(n) { case1: { printf("住户门牌号: "); scanf("%d",&re.number); for(i=0;i if((p+i)->number==re.number)break; printf("\n\t住户门牌号: %d\n\t户主姓名: %s\n\t总费用: %d",(p+i)->number,(p+i)->name,(p+i)->amoney); for(j=0;j<100;j++) printf("\n\t月用水量: %d\n\t月用电量: %d\n\t月费用: %d",(p+i)->wanum[j],(p+i)->elnum[j],(p+i)->emoney[j]); }break; case2: { printf("姓名: "); scanf("%s",re.name); for(i=0;i if(strcmp((p+i)->name,re.name)==0)break; printf("\n\t住户门牌号: %d\n\t户主姓名: %s\n\t总费用: %d",(p+i)->number,(p+i)->name,(p+i)->amoney); for(j=0;j<100;j++) printf("\n\t月用水量: %d\n\t月用电量: %d\n\t月费用: %d",(p+i)->wanum[j],(p+i)->elnum[j],(p+i)->emoney[j]); }break; case4: { printf("日期: "); scanf("%s",re.time); for(i=0;i for(j=0;j<100;j++) if(strcmp((p+i)->time[j],re.time[j])==0)break; printf("\n\t住户门牌号: %d\n\t户主姓名: %s",(p+i)->number,(p+i)->name); for(j=0;j<100;j++) printf("\n\t月用水量: %d\n\t月用电量: %d\n\t月费用: %d",(p+i)->wanum[j],(p+i)->elnum[j],(p+i)->emoney[j]); } } } voidDeleteFunc() { inti,j,m; printf("删除的住户门牌号为: []\b\b"); scanf("%d",&m); for(i=0;i if((p+i)->number==m) { strcpy((p+i)->name,(p+j+1)->name); (p+i)->amoney=(p+i+1)->amoney; for(j=0;j<100;j++) { (p+i)->wanum[j]=(p+i+1)->wanum[j+1]; (p+i)->elnum[j]=(p+i+1)->elnum[j+1]; strcpy((p+i)->time[j],(p+i+1)->time(j+1)); } SavedataFunc(); }
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 水电费 管理 系统
![提示](https://static.bingdoc.com/images/bang_tan.gif)