




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、#include<iostream>#include<string>#include<fstream>#include<stdlib.h>#include<iomanip>using namespace std;class livers/livers类 private: char name20; /姓名 char sex; char room_num10; char parking10; char ID_num20; char phone_num20; public: livers() livers(char n20,char s,c
2、har room10,char park10,char phone20,char ID20) strcpy(name,n); sex=s; strcpy(room_num,room); strcpy(parking,park); strcpy(phone_num,phone); strcpy(ID_num,ID); friend void menu();/友元函数;void key()char mima20,key20;char yu_mima20="12345" int flag;int p;char w; ifstream in; ofstream out; fstre
3、am f; /输入输出对象 cout<<" *"<<endl; cout<<" 欢迎登录小区物业管理系统 "<<endl; cout<<" *"<<endl<<endl; doflag=0; cout<<" 请输入管理员密钥:"<<endl; in.clear(); in.open("E:c.dat",ios:in); if(in.fail() /首次登录 cout<<endl
4、<<" 欢迎首次登录,您的预设密码为 12345:"<<endl<<endl; cout<<" 请输入:" cin>>mima; cout<<endl; if(strcmp(yu_mima,mima)=0) flag=1; cout<<" 密码正确!请输入下一步指令:"<<endl<<endl; if(!in.fail() /非首次登陆 in>>key; cin>>mima; if(strcmp(key,
5、mima)=0) flag=1; cout<<" 密码正确!请输入下一步指令:"<<endl<<endl; in.close(); if(flag=0) cout<<" 密码有误,请重新输入"<<endl<<endl;while(flag=0); cout<<" *"<<endl; cout<<" * 0、修改密码 *"<<endl; cout<<" * 1、进入系统 *&q
6、uot;<<endl; cout<<" * 2、退出系统 *"<<endl; cout<<" *"<<endl<<endl; do do cout<<" 请输入您的指令(02):"<<endl; cin>>p; switch(p) case 0: /修改密码 cout<<" 请输入新密码:"<<endl; cin>>key; out.open("E:c.dat&q
7、uot;,ios:out); out.clear(); out<<key; out.close();break; case 1: menu();break;/进入系统 case 2: /退出系统 cout<<" 谢谢使用,小区物业管理系统! "<<endl<<endl<<" Bye-bye! See you next time!"<<endl<<endl; exit(0);break;default : cout<<" 输入指令有误,请重新输入:&q
8、uot;<<endl<<endl;break;while(p<0|p>2); cout<<" 您想继续进行其他操作吗? y / n :"<<endl<<" " docin>>w; cout<<endl; if(w='n')exit(0); if(w!='y'&&w!='n') cout<<" 指令错误!请重新输入!"<<endl;while(flag=0
9、);if(w='y')cout<<" 请输入操作代码: 0 修改密码"<<endl;cout<<" 1 进入系统"<<endl;cout<<" 2 退出系统"<<endl;while(w='y'); /密钥函数void menu()cout<<" *"<<endl; cout<<" 小区物业管理系统 "<<endl; cout<<&q
10、uot; *"<<endl; cout<<" *"<<endl; cout<<" * 主菜单命令如下所示: *"<<endl; cout<<" * 1、输入数据 *"<<endl; cout<<" * 2、增加数据 *"<<endl; cout<<" * 3、修改数据 *"<<endl; cout<<" * 4、信息查询 *"
11、;<<endl; cout<<" * 5、信息浏览 *"<<endl; cout<<" * 6、信息删除 *"<<endl; cout<<" * 7、退出系统 *"<<endl; cout<<" *"<<endl; cout<<" 请输入您的指令数字(17)"<<endl<<" " char p;char w; livers liv5
12、0; livers *s50; ifstream in; ofstream out; fstream f; /输入输出对象 int i=0; int j=0; int flag=0; do /flag判断输入是否有效 cin>>p; if(p>='1'&&p<='7') flag=1; else cout<<" 指令错误!请重新输入:"<<endl; while(flag=0); do/最外层循环switch(p) /接收功能选项case '1': /信息输入ch
13、ar name20,sex,room_num10,parking10,phone_num20,ID_num20,c; out.open("E:a.dat",ios:out); do cout<<" 请输入住户姓名:" cin>>name; cout<<endl<<" 请输入住户性别:" cin>>sex; cout<<endl<<" 请输入其房间号:" cin>>room_num; cout<<endl<
14、;<" 请输入其车库号:" cin>>parking; cout<<endl<<" 请输入联系电话:" cin>>phone_num; cout<<endl<<" 请输入身份证号:" cin>>ID_num; cout<<endl; out<<setw(20)<<name<<setw(5)<<sex<<setw(10)<<room_num<<setw(
15、10)<<parking<<setw(20)<<phone_num<<setw(20)<<ID_num; /文件输入 cout<<" 数据输入成功,想继续输入吗? y / n : "<<endl<<" " cin>>c; cout<<endl; do if(c!='y'&&c!='n') cout<<" 指令错误!请重新输入!"<<endl<
16、;<" " char c; cin>>c; else flag=1; while(flag=0); while(c='y'); out.close(); break; case '2': /增加数据 char name20,sex,room_num10,parking10,phone_num20,ID_num20,c; out.open("E:a.dat",ios:app); do cout<<"请输入您要增加的住户的姓名:"<<endl; cin>>
17、;name; cout<<endl<<" 请输入住户性别:" cin>>sex; cout<<endl<<" 请输入其房间号:" cin>>room_num; cout<<endl<<" 请输入其车库号:" cin>>parking; cout<<endl<<" 请输入联系电话:" cin>>phone_num; cout<<endl<<"
18、 请输入身份证号:" cin>>ID_num; cout<<endl; out<<setw(20)<<name<<setw(5)<<sex<<setw(10)<<room_num<<setw(10)<<parking<<setw(20)<<phone_num<<setw(20)<<ID_num; /文件输入 cout<<" 数据添加成功,想继续添加吗? y / n :"<<e
19、ndl; cin>>c; cout<<endl; if(c='n')break; if(c!='y'&&c!='n') cout<<" 指令错误!请重新输入!"<<endl<<" " cin>>c; while(c='y'); out.close(); break; case '3': /修改数据char name20,sex,room_num10,parking10,phone_num2
20、0,ID_num20,c; char na20,s,room10,park10,phone20,ID20; do int flag=0; cout<<" 请输入您要修改的住户的姓名:"<<endl; cin>>na; cout<<endl; 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<&l
21、t;"请输入您要修改的住户的姓名:"<<endl; cin>>na; cout<<" 请输入新房间号:" cin>>room; cout<<endl<<" 请输入住户性别:" cin>>s; cout<<endl<<" 请输入其房间号:" cin>>room; cout<<endl<<" 请输入其车库号:" cin>>park; cout&l
22、t;<endl<<" 请输入联系电话:" cin>>phone; cout<<endl<<" 请输入身份证号:" cin>>ID; cout<<endl; sex=s; strcpy(room_num,room); strcpy(parking,park); strcpy(ID_num,ID); strcpy(phone_num,phone); f.seekp(-20l,ios:cur); f<<setw(20)<<na<<setw(5)&l
23、t;<s<<setw(10)<<room<<setw(10)<<park<<setw(20)<<phone<<setw(20)<<ID; /文件输入 cout<<" 修改成功! "<<endl<<endl;break; f.close(); if(flag=0) cout<<" 您要修改的学生不存在!"<<endl<<endl; cout<<" 您想继续修改吗?
24、 y / n :"<<endl; cin>>c; cout<<endl; if(c='n')break; if(c!='y'&&c!='n') cout<<" 指令错误!请重新输入!"<<endl<<" " cin>>c;while(c='y'); break; case '4': /信息查询 char name20,sex,room_num10,room10,par
25、king10,phone_num20,ID_num20; cout<<" 请选择您要进行查询的方式:"<<endl<<endl<<" 1.按住户名查询"<<endl<<endl<<" 2.按房间号查询"<<endl<<endl; int k; cin>>k; switch(k) case 1: /按住户名查询 char na20;char c; do in.open("E:a.dat",ios:i
26、n); in.seekg(0,ios:beg); in.clear(); int flag=0; cout<<" 请输入你要查询的住户姓名:"<<endl; cin>>na; cout<<endl; while(!in.eof()in>>name>>sex>>room_num>>parking>>phone_num>>ID_num; if(strcmp(name,na)=0) flag=1; cout<<" 您要查询的住户:"
27、;<<name<<" 的信息是: "<<endl<<endl; cout<<"姓名 性别 房间号 车库号 电话号码 身份证号 "<<endl;cout<<setw(2)<<name<<setw(5)<<sex<<setw(10)<<room_num<<setw(10)<<parking<<setw(20)<<phone_num<<setw(20)<
28、<ID_num<<endl; in.close(); if(flag=0) cout<<" 对不起!您要查询的住户不存在!"<<endl<<endl; cout<<" 您想继续查询吗? y / n :" cin>>c; cout<<endl; if(c='n')break; if(c!='y'&&c!='n') cout<<" 指令错误!请重新输入!"<<en
29、dl; cin>>c; while(c='y');break; case 2 : /按房间号查询 do int flag=0; cout<<" 请输入你要查询的房间号:"<<endl; cin>>room; cout<<endl; in.open("E:a.dat",ios:in); in.seekg(0,ios:beg); in.clear(); while(!in.eof()in>>name>>sex>>room_num>>pa
30、rking>>phone_num>>ID_num; if(strcmp(room_num,room)=0) flag=1; cout<<"您要查询的住户:"<<name<<"的信息是: "<<endl<<endl; cout<<"姓名 性别 房间号 车库号 电话号码 身份证号 "<<endl; cout<<setw(2)<<name<<setw(5)<<sex<<set
31、w(10)<<room_num<<setw(10)<<parking<<setw(20)<<phone_num<<setw(20)<<ID_num<<endl; in.close(); if(flag=0) cout<<" 对不起!您要查询的住户不存在!"<<endl; cout<<" 您想继续查询吗? y / n :" char c; cin>>c; cout<<endl; if(c='n&
32、#39;)break; if(c!='y'&&c!='n')cout<<" 指令错误!请重新输入!"<<endl; cin>>c;while(c='y'); break; default:cout<<"对不起,您输入的指令有误:"break; break;case '5': /信息浏览char name20,sex,room_num10,parking10,phone_num20,ID_num20; in.open("
33、E:a.dat",ios:in); in.seekg(0,ios:beg); in.clear(); if(in.get()=EOF)cout<<" 文件中已无数据"<<endl<<endl;in.close();break; cout<<" 本系统所有学生数据如下:"<<endl<<endl; cout<<"姓名 性别 房间号 车库号 电话号码 身份证号 "<<endl; while(!in.eof() in>>na
34、me>>sex>>room_num>>parking>>phone_num>>ID_num; cout<<setw(2)<<name<<setw(5)<<sex<<setw(10)<<room_num<<setw(10)<<parking<<setw(20)<<phone_num<<setw(20)<<ID_num<<endl; in.close(); break; case
35、9;6': /信息删除char name20,na20,sex,room_num10,parking10,phone_num20,ID_num20,c; int k; do int n=0;int flag=0; cout<<" 请输入您要删除的学生的姓名:"<<endl; cin>>na; cout<<endl; in.clear(); in.open("E:a.dat",ios:in); in.seekg(0,ios:beg); while(!in.eof() in>>name>
36、;>sex>>room_num>>parking>>phone_num>>ID_num; sn=new livers(name,sex,room_num,parking,phone_num,ID_num); livn=*sn; delete sn; n+; in.close(); for(i=0;i<n;i+) if(strcmp(,na)=0) flag=1;k=i; if(flag=1) out.open("E:a.dat",ios:out); out.seekp(0,ios:beg); if
37、(n>1) for(i=0;i<k;i+) out<<setw(2)<<<<setw(5)<<livi.sex<<setw(10)<<livi.room_num<<setw(10)<<livi.parking<<setw(20)<<livi.phone_num<<setw(20)<<livi.ID_num; for(i=k+1;i<n;i+) out<<setw(2)<<<<setw(5)<<livi.sex<<setw(10)<<livi.room_num<<setw(10)<<livi.parking<<setw(20)<<livi.phone_num<<setw(20)<<livi.ID_num; cout<<" 信息删除成功"<<endl<&
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 知识产权诉讼代理服务合同
- 花园洋房景观配套设施维修改造工程合同
- 互联网医疗技术入股评估及实施合同
- 环保科技项目投资合伙协议
- 跨国公司员工海外医疗险代理合作协议
- 井下作业基础培训
- 《杀虫剂效果评估》课件
- 《急救知识普及》课件
- 《心尖球形综合征》课件
- 《机智的狐狸》课件
- 卫生与健康教育
- 家长开放日家长意见反馈表
- 初中英语2023年中考专题训练任务型阅读-完成表格篇
- 数据中台-项目需求规格说明书
- 高级政工师职称面试题
- 老年人能力评估师高级第六章-需求评估
- 骨科基础知识解剖篇
- 职业道德与法治中职PPT完整全套教学课件
- (译林版)初中英语大纲词汇表(中考打印)
- 形势与政策(“四个正确认识”专题)知到章节答案智慧树2023年枣庄学院
- 保洁员满意度调查问卷
评论
0/150
提交评论