1、 小区物业管理系统2.2 课程设计实现可以通过操作输入、增加、修改、浏览、查询、删除小区内住户信息,来实现对小区内物业的管理。第三章 设计内容3.1需求分析3.1.1系统分析小区物业信息管理系统是针对当代社会,住宅小区越来越成为居住的主流这一市场需要而应运而生的,是为小区管理着和小区用户更好的维护小区各项物业管理业务处理工作而开发的管理软件。3.1.2功能分析小区管理系统包括小区成员的所住单元、住户号、工作单位、姓名、电话号码等信息;小区管理系统主要提供以下功能: 1.系统的登录界面(主要包括用户名、密码的设置、新用户的创建、密码的修改等);2.系统以菜单方式工作3.住户信息录入功能输入4.住
2、户信息增加、修改、查询功能(1)按住户名 (2)按房间号5.住户信息浏览功能显示6.住户信息删除功能3.2总体设计3.2.1开始登录界面图3-2-1 开始登录界面3.2.2各部分函数功能整个系统除了主函数外,另外还有6个函数,实现六大功能:增加数据功能、修改数据功能、信息查询功能、信息浏览功能、信息删除功能、退出系统功能。各个函数的详细设计说明分别如下:1. 增加数据功能:基本原理是用指针*P来创建一个存储单元,来存储住户的信息:住户的姓名、性别、电话号码、身份证号码。然后再和链变相连,有结构体链表来存储所有住户的信息。*指针只想最后一个结构体链表的最后一个结构体。2.修改数据功能:与增加数据
3、功能输入方式一样3.信息浏览功能:用printf来显示住户的信息,并且用for循环来实现所有的住户信息都能显示出。void Display(people people,int n) /*显示所有记录*/ int i;printf(ttt-n); /*格式头*/ tttnumber name telnfor(i=1;i1&i%10=0) /*每十个暂停*/ printf( /*格式*/ tttsystem(pause 4.信息删除功能:首先用指针找到此住户的前驱和后续,然后让前驱的NEXT指向后续,就删除所要删除的信息了。 首先用指针找到此住户的前驱和后续,然后让前驱的NEXT指向后续,就删除所
4、要删除的信息了。int Delete_a_record(people people ,int n) /*按姓名查找,删除一条记录*/ char s20;int i=0,j;ttttell me his(her) name: /*交互式问寻*/ scanf(%s,s);while(strcmp(peoplei.name,s)!=0&n) i+; /*查找判断*/ if(i=n) tttnot find!n /*返回失败信息*/ return(n); for(j=i;jn-1;j+) /*删除操作*/ strcpy(studj.num, people j+1.num);strcpy(studj.n
5、ame, people studj+1.name);people j.tel= people j+1.tel;tttDelete Successed! /*返回成功信息*/ return(n-1);void Query_a_record(people people,int n) /*查找并显示一个记录*/ int i=0;tttinput his(her) name: /*交互式输入*/ ttt%s /*输入失败信息*/ return;ttthis(her) number:%sn,peoplei.num); /*输出该学生信息*/ ttthis(her) tel:%dn,peoplei.tel
6、);int AddfromText(people people,int n) /*从文件中读入数据*/ int i=0,num;FILE *fp; /*定义文件指针*/ char filename20; /*定义文件名*/ tttInput the filename:,filename); /*输入文件名*/ if(fp=fopen(filename,rb)=NULL) /*打开文件*/ tttcannt open the filen /*打开失败信息*/ fscanf(fp,%d,&num); /*读入总记录量*/ while(inum) /*循环读入数据*/ fscanf(fp,%s%s%
7、d,peolen+i.num,peoplen+i.name,&peoplen+i.tel);i+;n+=num;fclose(fp); /*关闭文件*/ tttSuccessed!void WritetoText(Student people,int n) /*将所有记录写入文件*/ int i=0;tttWrite Records to a Text Filenwfprintf(fp,n); /*循环写入数据*/ n) fprintf(fp,%-16s%-15s%dn,peoplei.num,peoplei.name,peoplei.tel);Successed! /*返回成功信息*/ 6.
8、退出系统功能。3.3详细设计3.3.1系统功能模块图3-3-1 系统功能模块图3.3.2系统设计1.系统操作流程图 N Y Y N图3-3-2 系统操作流程图2.各部分详细流程1)增加数据 char name20,sex,room_num10,parking10,phone_num20,ID_num20,c; out.open(E:a.dat,ios:app); do coutname;endl 请输入住户性别:;sex; 请输入其房间号:room_num; 请输入其车库号:parking; 请输入联系电话:phone_num; 请输入身份证号:ID_num; outsetw(20)names
9、etw(5)sexsetw(10)room_numparkingphone_num /文件输入 数据添加成功,想继续添加吗? y / n :c; if(c=n)break; if(c!=yc!) cout if(strcmp(name,na)=0) flag=1;请输入您要修改的住户的姓名: 请输入新房间号:room;s;park;phone;ID; sex=s; strcpy(room_num,room); strcpy(parking,park); strcpy(ID_num,ID); strcpy(phone_num,phone); f.seekp(-20l,ios:cur); fnas
10、roomparkphonenamesexroom_numparkingphone_num 您要查询的住户: 的信息是:姓名 性别 房间号 车库号 电话号码 身份证号 coutsetw(2)ID_num in.close(); 对不起!您要查询的住户不存在! 您想继续查询吗? case 2 : /按房间号查询 请输入你要查询的房间号: if(strcmp(room_num,room)=0)您要查询的住户:的信息是: char c; cout default:cout对不起,您输入的指令有误:break; break;4)信息浏览 char name20,sex,room_num10,parkin
11、g10,phone_num20,ID_num20; if(in.get()=EOF)cout5)信息删除 char name20,na20,sex,room_num10,parking10,phone_num20,ID_num20,c; int n=0;int flag=0; 请输入您要删除的住户的姓名: sn=new livers(name,sex,room_num,parking,phone_num,ID_num); livn=*sn; delete sn; n+; for(i=0;n;i+) if(strcmp(livi.name,na)=0)k=i; if(flag=1) out.open( out.seekp(0,ios: if(n1)livi.namelivi.sexlivi.room_numlivi.parkinglivi.phone_numlivi.ID_num; for(i=k+1; 信息删除成功 if(n=1) else 您要删除的住户不存在! 您想继续删除吗?)break
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1