c语言物业管理系统_第1页
c语言物业管理系统_第2页
c语言物业管理系统_第3页
c语言物业管理系统_第4页
c语言物业管理系统_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、#in clude#in clude #i nclude#ifdef _GNUC_#i nclude#in clude#defi ne clear clear#defi ne Sleep(x) usleep(x#OOO)#en dif#ifdef _MSC_VER#in clude#i nclude#defi ne clear system(cls)#en dif#defi ne TRUE 1#defi ne FAUSE 0typedef struct perchar n ame20;int sex;char IDcard19;char pho ne12;int build_ num;int

2、unit_num;int house_ num;float area;float area_price;float charge;char remarks200;struct per *n ext;PERSON;void zhuce ();int logi n ();PERSON *Getdata (FILE *fp);void add_pers on ();void del (PERSON *L);void cha nge (PERSON *L);void sort_All (PERSON *L);void pay (PERSON *L);void sort_B_num (PERSON *L

3、);void menu_1 ();void menu_2 ();int mai n ()int check,a;printf(ntt1.注册);printf(ntt2.登录);printf(nttO.退出);printf(nt-请输入-:);sca nf(%d, &a);clear;switch(a)case 0:printf(tt-感谢使用本系统!-);Sleep(2000);exit(O);case 1:zhuce();clear;check = logi n();while (check = FAUSE)printf(n用户名或密码错误。);Sleep(2000);clear;check

4、 = logi n();clear;menu _1();break;case 2:check = logi n();while (check = FAUSE)printf (n用户名或密码错误。);Sleep(2000);clear;check = logi n(); clear;menu _1();break;return 0;void menu_1 ()FILE *fp;int a;PERSON *head = NULL;欢迎使用*);printf(ntt1.用户添加”);printf(ntt2.用户修改);printf(ntt3.用户删除);printf(ntt4.用户费用信息查看);p

5、rintf(ntt5.用户缴费);printf(nttO.退出);printf(nt-请输入-:);sea nf(%d, &a);clear;switeh(a)ease 0:printf(-感谢使用!-);Sleep(3000);exit(O);case 1:add_pers on();menu _1();break;case 2:fp = fope n(data.dat,r);head = Getdata(fp);prin tf(%s,head-n ame);if (head = NULL)printf(没有任何数据”);Sleep(3000);exit(1);elsecha nge(hea

6、d);menu _1();break;case 3:if(fp = fope n( data.dat,rb) = NULL)printf(没有任何数据);exit(1);else10 / 33head = Getdata(fp); del(head);menu _1();break;case 4:menu_2();break;case 5:fp = fope n(data.dat,rb);head = Getdata(fp);if (head = NULL)printf(没有任何数据);Sleep(3000);exit(1);elsepay(head);menu _1();break;void

7、 menu_2 ()FILE *fp;int a;PERSON *head =NULL;prin tf(tt*用户信息杳*).printf(ntt1.按楼号查看用户物业费情况);printf(ntt2.按费用信息查看用户物业费情况printf(nttO.退出);printf(nt-请输入-:);sca nf(%d, &a);clear;switch(a)case 0:printf(感谢使用);Sleep(3000);exit(O);case 1:fp = fope n(data.dat,rb);head = Getdata(fp);if (head = NULL)printf(没有任何数据);

8、Sleep(3000);exit(1);elsesort_B_ nu m(head);menu_2();break;case 2:fp = fope n(data.dat,rb);head = Getdata(fp);if (head = NULL)printf(没有任何数据);Sleep(3000);exit(1);elseprintf(tt-所有用户物业费情况-n);sort_All(head);menu_2();break;void zhuce ()FILE *fp;char ad50,key050,key150;char ch;int i,j;*用户注册);printf(nt-请输入用

9、户名:);sca nf(%s,ad);while (1)i = 0;j = 0;printf(nt-请输入密码:);/ini tscr();/no echo();while (ch = getch() != r)if (ch = 8)prin tf(b );putchar(b);if (i 0)i-;elseputchar(*);/fflush(stdout);keyOi+ = ch;/ endwin();keyOi = 0;printf(nt-请再次输入密码:);/ini tscr();/no echo();while (ch = getch() != r)if (ch = 8)prin t

10、f(b );putchar(b);if (j 0)j-;elseputchar(*);key1j+ = ch;/ endwin();key1j = 0;if (strcmp(key0,key1) != 0)clear;prin tf(%d,strcmp(keyO,key1);printf(t-两次输入密码不符,请重新输入-);15 / 33coco_ 9L-09m o9pee zdrJdr山_l匚 ()60二u一q_(d4Qsoo4 SA 5u_s%=a)匕 u 一e 严 9CX4.A 孑)u dH e_(d4Qsoo4 e5u_s%=a)匕 u 一e F&m.u 一 UJPe=)u dH e

11、 sooco)d 一S e5一 QiwlfflS% 丄旺 uc匕 d SQ 宀匚eoSoo0)d 一Schar ch_150,ch_250,ch_0;int i = 0,check = 0;*用户登录);34 / 33printf(ntt-用户名卜-);sca nf(%s,ad);printf(ntt-密码卜-);/in itscr();while (ch_0 = getch() != r)if (ch_0 = 8)prin tf(b );putchar(b);if (i 0) i-;else putchar(*);keyi+ = ch_0;keyi = 0:/ endwin();fp1 =

12、fope n(admi n. txt,r);fp2 = fope n(key.txt,r);while (!feof(fp1)fsca nf(fp1,%s,ch_1);fsca nf(fp2,%s,ch_2);/prin tf(%s,ch_1);/prin tf(%s,ch_2);if (strcmp(ad,ch_1) = 0)if (strcmp(key,ch_2) = 0)check = TRUE;break;fclose(fp1);fclose(fp2);retur n check;PERSON *Getdata (FILE *fp)PERSON *head = NULL;PERSON

13、*p1,*p2;p1 = (PERSON*)malloc(sizeof(struct per);while (fread(p1,sizeof(struct per),1,fp) = 1) /prin tf(%s,p1- name);if (head = NULL)head = p2 = p1;elsep2 - n ext = p1;p2 = p1;p1 = p1 - n ext;pl = (PERSON*)malloc(sizeof(struct per);p2 - n ext = NULL;free(pl);retur n head;void save (PERSON *head)FILE

14、*fp;PERSON *p;fp = fope n(data.dat,wb+);p = head;while (p != NULL)fwrite(p,sizeof(struct per),1,fp);p = p - n ext;fclose(fp);void add_pers on ()PERSON *p1,*p2;PERSON *head = NULL;int n;prin tf(ntt*用户添加);while (1)p1 = (PERSON*)malloc(sizeof(struct per);printf(nn请输入用户信息:姓名 性别(0.女性;1男性)身份证 联系方式 楼号单元号房号

15、平米数每平米价格备注nn);sca nf(%s,(*p1). name);sca nf(%d,&(*p1).sex);sca nf(%s,(*p1)Dcard);sca nf(%s,(*p1).pho ne);sca nf(%d,&(*p1).build_num);sca nf(%d,&( *p1).u nit_num);sca nf(%d,&(*p1).house_num);sca nf(%f, &( *p1).area);sca nf(%f, &(*p1).area_price);sca nf(%s,(*p1).remarks);(*p1).charge = (*p1).area * (*

16、p1).area_price * (-1);if (head = NULL)head = p2 = p1;elsep2 -n ext = p1;p2 = pl;printf(nt-用户添加成功!-);printf(n是否继续添加(1.是;0.否);sca nf(%d,&n);if (n = 0)break;p1 = p1 - n ext;p2 - n ext = NULL;save(head);void del (PERSON *L)PERSON *head,*p1,*p2;PERSON *p;char name20,ID19;int k = 0;int n;p = (PERSON*)mall

17、oc(sizeof(struct per);p - next = head = L;while (1)p1 = p;printf(请输入所要删除的用户姓名及身份证号n-);sca nf(%s %s ,n ame,ID);while (p1 - next != NULL)if (strcmp( name,p1- n ext- name) = 0 & strcmp(ID,p1-n ext-IDcard) = 0)p2 = p1 - n ext;p1 - n ext = p2 - n ext;free(p2);k = 1;break;p1 = p1 - n ext;head = p - n ext;

18、if (k = 0)printf(nt-没有相关用户!-);elseprintf(nt 删除用户-%s 成功! ”,name);printf(n是否继续删除(1.是;0否);sca nf(%d,&n);if (n = 0)break;save(head);void cha nge (PERSON *L)char name20,ID19;PERSON *p;int n ,k = 0;while (1)p = L;printf(-请输入所需修改用户的姓名及身份证-n-);sea nf(%s, name);sea nf(%s,ID);while (p - n ext != NULL)if (strc

19、mp(p - n ame ,n ame) = 0 & strcmp(p - IDcard,ID) = 0)k = 1;break;p = p - n ext;if (k = 0)printf(没有查找到该用户,是否重新输入(1.是 ;0.否)n-);sca nf(%d,&n);if (n != 1)break;elseclear;printf(t-请输入用户-%s -修改后信息-,p - name);每平printf(姓名 性别 身份证 联系方式 楼号单元号房号平米数 米价格 备注);sca nf(%s,(*p). name);sca nf(%d,&(*p).sex);sca nf(%s,(*

20、p)Dcard);sca nf(%s,(*p).pho ne);sca nf(%d,&(*p).build_num);sca nf(%d,&(*p).u nit_num);sca nf(%d,&(*p).house_num);sca nf(%f, &(*p).area);sca nf(%f,&(*p).area_price);sca nf(%s,(*p).remarks);(*p).charge = (*p).area * (*p).area_price;printf(修改用户成功n是否继续修改(1.是;0.否);sca nf(%d,&n);if (n != 1)break;save(L);v

21、oid pay (PERSON *L)char name20,ID19;PERSON *head,*p;int n ,k = 0;float mon ey;head = L;while (1)printf(-请输入所需缴费的用户及身份证-n-);sea nf(%s %s ,n ame,ID);p = head;while (p - n ext != NULL)if (stremp(p - n ame ,n ame) = 0 & stremp(p - IDeard,ID) = 0)k = 1;break;p = p - n ext;if (k = 0)printf(没有查找到该用户,是否重新输入

22、(1是;0.否)n-);sea nf(%d,&n);if (n != 1)break;elseprintf(请输入缴费金额:n-);sca nf(%f,&mo ney);p - charge += mon ey;printf(是否继续缴费(1.是;0.否);sca nf(%d,&n);if (n != 1)break;save(head);void sort_AII (PERSON *L)PERSON *p;PERSON s20,a;int n 二 0;int i,j;p = L;while (p - n ext != NULL)strcpy(s n.n ame,p - n ame);sn .

23、sex = p - sex;strcpy(s n.l Dcard,p - IDcard);strcpy(s n .pho ne,p - phon e);sn .build_ num 二 p - build_ num;sn .u nit_num = p - unit_num;sn .house_ num = p - house_ num;sn .area = p - area;sn .area_price = p - area_price;sn .charge = p - charge;strcpy(s n.remarks,p - remarks);n+;p = p - n ext;for (i

24、 = 0; i n; i+)for (j = i+1; j sj.charge)strcp,sj. n ame);a.sex = sj. sex;strcpy(aDcard,sj. IDcard);strcpy(a.ph on e,sj.ph on e);a.build_ num = sj.build_ num;a.unit_num = sj. unit_num;a.house_ num = sj. house_ num;a.area = sj. area;a.area_price = sj.area_price;a.charge = sj. charge;strcpy(a.remarks,s

25、j.remarks);strcpy(sj. name,si. name);sn .sex = si.sex;strcpy(sjDcard,siDcard); strcpy(sj.pho ne,si.ph on e); sj.build_ num = si.build_ num; sj.u nit_num = si.u nit_num; sj.house_ num = si.house_ num; sj.area = si.area; sj.area_price = si.area_price; sj.charge = si.charge; strcpy(s n.remarks,si.remar

26、ks); strcpy(si. nam); si.sex = a.sex;strcpy(siDcard,aDcard); strcpy(si.pho ne,a.ph on e); si.build_ num = a.build_ num; si.u nit_num = a.unit_num; si.house_ num = a.house_ num; si.area = a.area;si.area_price = a.area_price; si.charge = a.charge;strcpy(s n.remarks,a.remarks);printf(姓名性别 身份证联系电话楼号单元号房号平米数每平米价格费用情况备注);for (i = 0; i n ext != NULL)if (p - build_ num = 1 & p - charge n ame);ai.sex = p - sex;strcpy(aiDcard,p - IDcard);strcpy(ai.pho ne,p - pho ne);ai.build_ num = p - build_ num;ai.u nit_num = p - unit_num;ai.house_ num = p - house_ num;ai.area = p - area;ai.area_pric

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论