c语言物业管理系统.docx
- 文档编号:29403838
- 上传时间:2023-07-23
- 格式:DOCX
- 页数:22
- 大小:33.31KB
c语言物业管理系统.docx
《c语言物业管理系统.docx》由会员分享,可在线阅读,更多相关《c语言物业管理系统.docx(22页珍藏版)》请在冰豆网上搜索。
c语言物业管理系统
CompanyDocumentnumber:
WTUT-WT88Y-W8BBGB-BWYTT-19998
c语言物业管理系统
#include<>
#include<>
#include<>
#ifdef__GNUC__
#include<>
#include<>
#defineclearclear
#defineSleep(x)usleep(x##000)
#endif
#ifdef_MSC_VER
#include<>
#include<>
#defineclearsystem("cls")
#endif
#defineTRUE1
#defineFAUSE0
typedefstructper
{
charname[20];
intsex;
charIDcard[19];
charphone[12];
intbuild_num;
intunit_num;
inthouse_num;
floatarea;
floatarea_price;
floatcharge;
charremarks[200];
structper*next;
}PERSON;
voidzhuce();
intlogin();
PERSON*Getdata(FILE*fp);
voidadd_person();
voiddel(PERSON*L);
voidchange(PERSON*L);
voidsort_All(PERSON*L);
voidpay(PERSON*L);
voidsort_B_num(PERSON*L);
voidmenu_1();
voidmenu_2();
intmain()
{
intcheck,a;
printf("\t**************************Welcome!
***********************");
printf("\n\t\t1.注册");
printf("\n\t\t2.登录");
printf("\n\t\t0.退出");
printf("\n\t--请输入--:
");
scanf("%d",&a);
clear;
switch(a)
{
case0:
{
printf("\t\t--感谢使用本系统!
--");
Sleep(2000);
exit(0);
}
case1:
{
zhuce();
clear;
check=login();
while(check==FAUSE)
{
printf("\n用户名或密码错误。
");
Sleep(2000);
clear;
check=login();
}
clear;
menu_1();
break;
}
case2:
{
check=login();
while(check==FAUSE)
{
printf("\n用户名或密码错误。
");
Sleep(2000);
clear;
check=login();
}
clear;
menu_1();
break;
}
}
return0;
}
voidmenu_1()
{
FILE*fp;
inta;
PERSON*head=NULL;
printf("\t\t*************************欢迎使用***************************");
printf("\n\t\t1.用户添加");
printf("\n\t\t2.用户修改");
printf("\n\t\t3.用户删除");
printf("\n\t\t4.用户费用信息查看");
printf("\n\t\t5.用户缴费");
printf("\n\t\t0.退出");
printf("\n\t--请输入--:
");
scanf("%d",&a);
clear;
switch(a)
{
case0:
{
printf("--感谢使用!
--");
Sleep(3000);
exit(0);
}
case1:
{
add_person();
menu_1();
break;
}
case2:
{
fp=fopen("","r");
head=Getdata(fp);
printf("%s",head->name);
if(head==NULL)
{
printf("没有任何数据");
Sleep(3000);
exit
(1);
}
else
{
change(head);
menu_1();
}
break;
}
case3:
{
if((fp=fopen("","rb"))==NULL)
{
printf("没有任何数据");
exit
(1);
}
else
{
head=Getdata(fp);
del(head);
menu_1();
}
break;
}
case4:
{
menu_2();
break;
}
case5:
{
fp=fopen("","rb");
head=Getdata(fp);
if(head==NULL)
{
printf("没有任何数据");
Sleep(3000);
exit
(1);
}
else
{
pay(head);
menu_1();
}
break;
}
}
}
voidmenu_2()
{
FILE*fp;
inta;
PERSON*head=NULL;
printf("\t\t*******用户信息查看**********");
printf("\n\t\t1.按楼号查看用户物业费情况");
printf("\n\t\t2.按费用信息查看用户物业费情况");
printf("\n\t\t0.退出");
printf("\n\t--请输入--:
");
scanf("%d",&a);
clear;
switch(a)
{
case0:
{
printf("感谢使用");
Sleep(3000);
exit(0);
}
case1:
{
fp=fopen("","rb");
head=Getdata(fp);
if(head==NULL)
{
printf("没有任何数据");
Sleep(3000);
exit
(1);
}
else
{
sort_B_num(head);
menu_2();
}
break;
}
case2:
{
fp=fopen("","rb");
head=Getdata(fp);
if(head==NULL)
{
printf("没有任何数据");
Sleep(3000);
exit
(1);
}
else
{
printf("\t\t--所有用户物业费情况--\n");
sort_All(head);
menu_2();
}
break;
}
}
}
voidzhuce()
{
FILE*fp;
charad[50],key0[50],key1[50];
charch;
inti,j;
printf("\t\t************用户注册*********");
printf("\n\t--请输入用户名:
");
scanf("%s",ad);
while
(1)
{
i=0;
j=0;
printf("\n\t--请输入密码:
");
性;1.男性)身份证联系方式楼号单元号房号平米数每平米价格备注\n\n");
scanf("%s",(*p1).name);
scanf("%d",&(*p1).sex);
scanf("%s",(*p1).IDcard);
scanf("%s",(*p1).phone);
scanf("%d",&(*p1).build_num);
scanf("%d",&(*p1).unit_num);
scanf("%d",&(*p1).house_num);
scanf("%f",&(*p1).area);
scanf("%f",&(*p1).area_price);
scanf("%s",(*p1).remarks);
(*p1).charge=(*p1).area*(*p1).area_price*(-1);
if(head=NULL)
head=p2=p1;
else
{
p2->next=p1;
p2=p1;
}
printf("\n\t--用户添加成功!
--");
printf("\n是否继续添加(1.是;0.否)");
scanf("%d",&n);
if(n==0)
break;
p1=p1->next;
}
p2->next=NULL;
save(head);
}
voiddel(PERSON*L)
{
PERSON*head,*p1,*p2;
PERSON*p;
charname[20],ID[19];
intk=0;
intn;
p=(PERSON*)malloc(sizeof(structper));
p->next=head=L;
while
(1)
{
p1=p;
printf("请输入所要删除的用户姓名及身份证号\n--");
scanf("%s%s",name,ID);
while(p1->next!
=NULL)
{
if(strcmp(name,p1->next->name)==0&&strcmp(ID,p1->next->IDcard)==0)
{
p2=p1->next;
p1->next=p2->next;
free(p2);
k=1;
break;
}
p1=p1->next;
}
head=p->next;
if(k==0)
printf("\n\t--没有相关用户!
--");
else
{
printf("\n\t删除用户-%s-成功!
",name);
printf("\n是否继续删除(1.是;0否)");
scanf("%d",&n);
if(n==0)
break;
}
}
save(head);
}
voidchange(PERSON*L)
{
charname[20],ID[19];
PERSON*p;
intn,k=0;
while
(1)
{
p=L;
printf("--请输入所需修改用户的姓名及身份证--\n--");
scanf("%s",name);
scanf("%s",ID);
while(p->next!
=NULL)
{
if(strcmp(p->name,name)==0&&strcmp(p->IDcard,ID)==0)
{
k=1;
break;
}
p=p->next;
}
if(k==0)
{
printf("没有查找到该用户,是否重新输入(1.是;0.否)\n--");
scanf("%d",&n);
if(n!
=1)
break;
}
else
{
clear;
printf("\t--请输入用户-%s-修改后信息--",p->name);
printf("姓名性别身份证联系方式楼号单元号房号平米数每平米价格备注");
scanf("%s",(*p).name);
scanf("%d",&(*p).sex);
scanf("%s",(*p).IDcard);
scanf("%s",(*p).phone);
scanf("%d",&(*p).build_num);
scanf("%d",&(*p).unit_num);
scanf("%d",&(*p).house_num);
scanf("%f",&(*p).area);
scanf("%f",&(*p).area_price);
scanf("%s",(*p).remarks);
(*p).charge=(*p).area*(*p).area_price;
printf("修改用户成功\n是否继续修改(1.是;0.否)");
scanf("%d",&n);
if(n!
=1)
break;
}
}
save(L);
}
voidpay(PERSON*L)
{
charname[20],ID[19];
PERSON*head,*p;
intn,k=0;
floatmoney;
head=L;
while
(1)
{
printf("--请输入所需缴费的用户及身份证--\n--");
scanf("%s%s",name,ID);
p=head;
while(p->next!
=NULL)
{
if(strcmp(p->name,name)==0&&strcmp(p->IDcard,ID)==0)
{
k=1;
break;
}
p=p->next;
}
if(k==0)
{
printf("没有查找到该用户,是否重新输入(1.是;0.否)\n--");
scanf("%d",&n);
if(n!
=1)
break;
}
else
{
printf("请输入缴费金额:
\n--");
scanf("%f",&money);
p->charge+=money;
printf("是否继续缴费(1.是;0.否)");
scanf("%d",&n);
if(n!
=1)
break;
}
}
save(head);
}
voidsort_All(PERSON*L)
{
PERSON*p;
PERSONs[20],a;
intn=0;
inti,j;
p=L;
while(p->next!
=NULL)
{
strcpy(s[n].name,p->name);
s[n].sex=p->sex;
strcpy(s[n].IDcard,p->IDcard);
strcpy(s[n].phone,p->phone);
s[n].build_num=p->build_num;
s[n].unit_num=p->unit_num;
s[n].house_num=p->house_num;
s[n].area=p->area;
s[n].area_price=p->area_price;
s[n].charge=p->charge;
strcpy(s[n].remarks,p->remarks);
n++;
p=p->next;
}
for(i=0;i { for(j=i+1;j { if(s[i].charge>s[j].charge) { strcpy,s[j].name); =s[j].sex; strcpy,s[j].IDcard); strcpy,s[j].phone); =s[j].build_num; =s[j].unit_num; =s[j].house_num; =s[j].area; =s[j].area_price; =s[j].charge; strcpy,s[j].remarks); strcpy(s[j].name,s[i].name); s[n].sex=s[i].sex; strcpy(s[j].IDcard,s[i].IDcard); strcpy(s[j].phone,s[i].phone); s[j].build_num=s[i].build_num; s[j].unit_num=s[i].unit_num; s[j].house_num=s[i].house_num; s[j].area=s[i].area; s[j].area_price=s[i].area_price; s[j].charge=s[i].charge; strcpy(s[n].remarks,s[i].remarks); strcpy(s[i].name,; s[i].sex=; strcpy(s[i].IDcard,; strcpy(s[i].phone,; s[i].build_num=; s[i].unit_num=; s[i].house_num=; s[i].area=; s[i].area_price=; s[i].charge=; strcpy(s[n].remarks,; } } } printf("姓名性别身份证联系电话楼号单元号房号平米数每平米价格费用情况备注"); for(i=0;i printf("%s%d%s%s%d%d%d%.2f%.2f%.2f%s\n",s[i].name,s[i].sex,s[i].IDcard,s[i].phone,s[i].build_num,s[i].unit_num,s[i].area,s[i].area_price,s[i].charge,s[i].remarks); } voidsort_B_num(PERSON*L) { PERSONa[10],b[10]; PERSON*p; inti=0,j=0,n; p=L; while(p->next! =NULL) { if(p->build_num==1&&p->charge<0) { strcpy(a[i].name,p->name); a[i].sex=p->sex; strcpy(a[i].IDcard,p->IDcard); strcpy(a[i].phone,p->phone); a[i].build_num=p->build_num; a[i].unit_num=p->unit_num; a[i].house_num=p->house_num; a[i].area=p->area; a[i].area_price=p->area_price; a[i].charge=p->charge; strcpy(a[i].remarks,p->remarks); i++; } if(p->build_num==2&&p->charge<0) { strcpy(b[j].name,p->name); b[j].sex=p->sex; strcpy(b[j].IDcard,p->IDcard); strcpy(b[j].phone,p->phone); b[j].build_num=p->build_num; b[j].unit_num=p->unit_num; b[j].house_num=p->house_num; b[j].area=p->area; b[j].area_price=p->area_price; b[j].charge=p->charge; strcpy(b[j].remarks,p->remarks); j++; } p=p->next; } printf("楼号--[1]--的欠费用户信息\n"); printf("姓名性别身份证联系电话楼号单元号房号平米数每平米价格费用情况备注"); for(n=0;n printf("%s%d%s%s%d%d%d%.2f%.2f%.2f%s\n",a[i].name,a[i].sex,a[i].IDcard,a[i].phone,a[i].build_num,a[i].unit_num,a[i].area,a[i].area_price,a[i].charge,a[i].remarks); pr
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 物业管理 系统