小区物业管理系统C++课程设计.docx
- 文档编号:29844405
- 上传时间:2023-07-27
- 格式:DOCX
- 页数:19
- 大小:17.53KB
小区物业管理系统C++课程设计.docx
《小区物业管理系统C++课程设计.docx》由会员分享,可在线阅读,更多相关《小区物业管理系统C++课程设计.docx(19页珍藏版)》请在冰豆网上搜索。
小区物业管理系统C++课程设计
#include
#include
#include
#include
#include
usingnamespacestd;
classlivers//livers类
{private:
charname[20];//姓名
charsex;
charroom_num[10];
charparking[10];
charID_num[20];
charphone_num[20];
public:
livers(){}
livers(charn[20],chars,charroom[10],charpark[10],charphone[20],charID[20])
{strcpy(name,n);
sex=s;
strcpy(room_num,room);
strcpy(parking,park);
strcpy(phone_num,phone);
strcpy(ID_num,ID);}
friendvoidmenu();//友元函数
};
voidkey()
{charmima[20],key[20];charyu_mima[20]="12345";
intflag;intp;charw;
ifstreamin;
ofstreamout;
fstreamf;//输入输出对象
cout<<"******************************************"< cout<<"欢迎登录小区物业管理系统"< cout<<"******************************************"< do{flag=0; cout<<"请输入管理员密钥: "< in.clear(); in.open("E: \\c.dat",ios: : in); if(in.fail())//首次登录 {cout< "< cout<<"请输入: "; cin>>mima; cout< if(strcmp(yu_mima,mima)==0) {flag=1; cout<<"密码正确! 请输入下一步指令: "< if(! in.fail())//非首次登陆 {in>>key; cin>>mima; if(strcmp(key,mima)==0) {flag=1; cout<<"密码正确! 请输入下一步指令: "< } in.close(); if(flag==0) cout<<"密码有误,请重新输入"< }while(flag==0); cout<<"*************************"< cout<<"*0、修改密码*"< cout<<"*1、进入系统*"< cout<<"*2、退出系统 *"< cout<<"*************************"< do{ do {cout<<"请输入您的指令(0~2): "< cin>>p; switch(p) { case0: //修改密码 {cout<<"请输入新密码: "< cin>>key; out.open("E: \\c.dat",ios: : out); out.clear(); out< out.close();}break; case1: menu();break;//进入系统 case2: //退出系统 {cout<<"谢谢使用,小区物业管理系统! "< Seeyounexttime! "< exit(0);}break; default: cout<<"输入指令有误,请重新输入: "< } }while(p<0||p>2); cout<<"您想继续进行其他操作吗? y/n: "< do{cin>>w; cout< if(w=='n')exit(0); if(w! ='y'&&w! ='n') cout<<"指令错误! 请重新输入! "< }while(flag==0); if(w=='y') {cout<<"请输入操作代码: 0修改密码"< cout<<"1进入系统"< cout<<"2退出系统"< }while(w=='y'); }//密钥函数 voidmenu() {cout<<"******************************************"< cout<<"小区物业管理系统"< cout<<"******************************************"< cout<<"**************************"< cout<<"*主菜单命令如下所示: *"< cout<<"*1、输入数据*"< cout<<"*2、增加数据*"< cout<<"*3、修改数据 *"< cout<<"*4、信息查询*"< cout<<"*5、信息浏览*"< cout<<"*6、信息删除*"< cout<<"*7、退出系统*"< cout<<"**************************"< cout<<"请输入您的指令数字(1~7)"< charp;charw; liversliv[50]; livers*s[50]; ifstreamin; ofstreamout; fstreamf;//输入输出对象 inti=0; intj=0; intflag=0; do//flag判断输入是否有效 { cin>>p; if(p>='1'&&p<='7') flag=1; else cout<<"指令错误! 请重新输入: "< }while(flag==0); do{//最外层循环 switch(p)//接收功能选项 { case'1': //信息输入 {charname[20],sex,room_num[10],parking[10],phone_num[20],ID_num[20],c; out.open("E: \\a.dat",ios: : out); do{ cout<<"请输入住户姓名: "; cin>>name; cout< "; cin>>sex; cout< "; cin>>room_num; cout< "; cin>>parking; cout< "; cin>>phone_num; cout< "; cin>>ID_num; cout< out< cout<<"数据输入成功,想继续输入吗? y/n: "< cin>>c; cout< do { if(c! ='y'&&c! ='n') {cout<<"指令错误! 请重新输入! "< charc; cin>>c;} elseflag=1; }while(flag==0); }while(c=='y'); out.close(); break; } case'2': //增加数据 {charname[20],sex,room_num[10],parking[10],phone_num[20],ID_num[20],c; out.open("E: \\a.dat",ios: : app); do { cout<<"请输入您要增加的住户的姓名: "< cin>>name; cout< "; cin>>sex; cout< "; cin>>room_num; cout< "; cin>>parking; cout< "; cin>>phone_num; cout< "; cin>>ID_num; cout< out< cout<<"数据添加成功,想继续添加吗? y/n: "< cin>>c; cout< if(c=='n')break; if(c! ='y'&&c! ='n') {cout<<"指令错误! 请重新输入! "< cin>>c;} }while(c=='y'); out.close(); break; } case'3': //修改数据 {charname[20],sex,room_num[10],parking[10],phone_num[20],ID_num[20],c; charna[20],s,room[10],park[10],phone[20],ID[20]; do {intflag=0; cout<<"请输入您要修改的住户的姓名: "< cin>>na; cout< f.open("E: \\a.dat",ios: : in|ios: : out); f.seekg(0,ios: : beg); f.clear(); while(! f.eof()) {f>>name; if(strcmp(name,na)==0) {flag=1; cout<<"请输入您要修改的住户的姓名: "< cin>>na; cout<<"请输入新房间号: "; cin>>room; cout< "; cin>>s; cout< "; cin>>room; cout< "; cin>>park; cout< "; cin>>phone; cout< "; cin>>ID; cout< sex=s; strcpy(room_num,room); strcpy(parking,park); strcpy(ID_num,ID); strcpy(phone_num,phone); f.seekp(-20l,ios: : cur); f< cout<<"修改成功! "< } f.close(); if(flag==0) cout<<"您要修改的学生不存在! "< cout<<"您想继续修改吗? y/n: "< cin>>c; cout< if(c=='n')break; if(c! ='y'&&c! ='n') {cout<<"指令错误! 请重新输入! "< cin>>c;} }while(c=='y'); break; } case'4': //信息查询 {charname[20],sex,room_num[10],room[10],parking[10],phone_num[20],ID_num[20]; cout<<"请选择您要进行查询的方式: "< intk; cin>>k; switch(k) case1: //按住户名查询 {charna[20];charc; do{ in.open("E: \\a.dat",ios: : in); in.seekg(0,ios: : beg); in.clear(); intflag=0; cout<<"请输入你要查询的住户姓名: "< cin>>na; cout< while(! in.eof()) {in>>name>>sex>>room_num>>parking>>phone_num>>ID_num; if(strcmp(name,na)==0) {flag=1; cout<<"您要查询的住户: "< "< cout<<"姓名性别房间号车库号电话号码身份证号"< cout< (2)< } in.close(); if(flag==0) cout<<"对不起! 您要查询的住户不存在! "< cout<<"您想继续查询吗? y/n: "; cin>>c; cout< if(c=='n')break; if(c! ='y'&&c! ='n') {cout<<"指令错误! 请重新输入! "< cin>>c;} }while(c=='y'); break; case2: //按房间号查询 { do{ intflag=0; cout<<"请输入你要查询的房间号: "< cin>>room; cout< in.open("E: \\a.dat",ios: : in); in.seekg(0,ios: : beg); in.clear(); while(! in.eof()) {in>>name>>sex>>room_num>>parking>>phone_num>>ID_num; if(strcmp(room_num,room)==0) {flag=1; cout<<"您要查询的住户: "< "< cout<<"姓名性别房间号车库号电话号码身份证号"< cout< (2)< } in.close(); if(flag==0) cout<<"对不起! 您要查询的住户不存在! "< cout<<"您想继续查询吗? y/n: "; charc; cin>>c; cout< if(c=='n')break; if(c! ='y'&&c! ='n') {cout<<"指令错误! 请重新输入! "< cin>>c;} }while(c=='y'); break; default: cout<<"对不起,您输入的指令有误: ";}break; }break; case'5': //信息浏览 {charname[20],sex,room_num[10],parking[10],phone_num[20],ID_num[20]; in.open("E: \\a.dat",ios: : in); in.seekg(0,ios: : beg); in.clear(); if(in.get()==EOF){cout<<"文件中已无数据"< cout<<"本系统所有学生数据如下: "< cout<<"姓名性别房间号车库号电话号码身份证号"< while(! in.eof()) {in>>name>>sex>>room_num>>parking>>phone_num>>ID_num; cout< (2)< } in.close(); break; } case'6': //信息删除 {charname[20],na[20],sex,room_num[10],parking[10],phone_num[20],ID_num[20],c; intk; do {intn=0;intflag=0; cout<<"请输入您要删除的学生的姓名: "< cin>>na; cout< in.clear(); in.open("E: \\a.dat",ios: : in); in.seekg(0,ios: : beg); while(! in.eof()) {in>>name>>sex>>room_num>>parking>>phone_num>>ID_num; s[n]=newlivers(name,sex,room_num,parking,phone_num,ID_num); liv[n]=*s[n]; deletes[n]; n++;} in.close(); for(i=0;i {if(strcmp(liv[i].name,na)==0) {flag=1;k=i;} } if(flag==1) {out.open("E: \\a.dat",ios: : out); out.seekp(0,ios: : beg); if(n>1) { for(i=0;i out< (2)< for(i=k+1;i out< (2)< cout<<"信息删除成功"< } if(n=1){} out.close(); } else cout<<"您要删除的住户不存在! "< cout<<"您想继续删除吗? y/n: "< cin>>c; cout< if(c=='n')break; if(c! ='y'&&c! ='n') {cout<<"指令错误! 请重新输入! "< cin>>c;} }while(c=='y'); break; } case'7': //退出 {cout<<"Byebye! Seeyounexttime."< cout<<"王建制作"< }//以上为menu菜单中switch控制语句 cout<<"您想继续进行其他操作吗? y/n: "< intflag=0; do{cin>>w; cout< if(w=='n')exit(0); if(w! ='y'&&w! ='n') cout<<"指令错误! 请重新输入! "< else flag=1; }while(flag==0); if(w=='y') {cout<<"请输入操作代码: 1输入数据"<