C++课程设计小区物业管理系统
来源:互联网 发布:2016淘宝开店要钱吗 编辑:程序博客网 时间:2024/04/30 05:56
#include<iostream>
#include<string>
#include<fstream>
#include<stdlib.h>
#include<iomanip>
using namespace std;
class livers//livers类
{ private:
char name[20]; //姓名
char sex;
char room_num[10];
char parking[10];
char ID_num[20];
char phone_num[20];
public:
livers(){}
livers(char n[20],char s,char room[10],char park[10],char phone[20],char ID[20])
{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 mima[20],key[20];char yu_mima[20]="12345";
int flag;int p;char w;
ifstream in;
ofstream out;
fstream f; //输入输出对象
cout<<" ******************************************"<<endl;
cout<<" 欢迎登录小区物业管理系统 "<<endl;
cout<<" ******************************************"<<endl<<endl;
do{flag=0;
cout<<" 请输入管理员密钥:"<<endl;
in.clear();
in.open("E:\\c.dat",ios::in);
if(in.fail()) //首次登录
{cout<<endl<<" 欢迎首次登录,您的预设密码为 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,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、进入系统 *"<<endl;
cout<<" * 2、退出系统 *"<<endl;
cout<<" *************************"<<endl<<endl;
do{
do
{cout<<" 请输入您的指令(0~2):"<<endl;
cin>>p;
switch(p)
{
case 0: //修改密码
{cout<<" 请输入新密码:"<<endl;
cin>>key;
out.open("E:\\c.dat",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<<" 输入指令有误,请重新输入:"<<endl<<endl;break;
}
}while(p<0||p>2);
cout<<" 您想继续进行其他操作吗? y / n :"<<endl<<" ";
do{cin>>w;
cout<<endl;
if(w=='n')exit(0);
if(w!='y'&&w!='n')
cout<<" 指令错误!请重新输入!"<<endl;
}while(flag==0);
if(w=='y')
{cout<<" 请输入操作代码: 0 修改密码"<<endl;
cout<<" 1 进入系统"<<endl;
cout<<" 2 退出系统"<<endl;}
}while(w=='y');
} //密钥函数
void menu()
{cout<<" ******************************************"<<endl;
cout<<" 小区物业管理系统 "<<endl;
cout<<" ******************************************"<<endl;
cout<<" **************************"<<endl;
cout<<" * 主菜单命令如下所示: *"<<endl;
cout<<" * 1、输入数据 *"<<endl;
cout<<" * 2、增加数据 *"<<endl;
cout<<" * 3、修改数据 *"<<endl;
cout<<" * 4、信息查询 *"<<endl;
cout<<" * 5、信息浏览 *"<<endl;
cout<<" * 6、信息删除 *"<<endl;
cout<<" * 7、退出系统 *"<<endl;
cout<<" **************************"<<endl;
cout<<" 请输入您的指令数字(1~7)"<<endl<<" ";
char p;char w;
livers liv[50];
livers *s[50];
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': //信息输入
{char name[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<<endl<<" 请输入住户性别:";
cin>>sex;
cout<<endl<<" 请输入其房间号:";
cin>>room_num;
cout<<endl<<" 请输入其车库号:";
cin>>parking;
cout<<endl<<" 请输入联系电话:";
cin>>phone_num;
cout<<endl<<" 请输入身份证号:";
cin>>ID_num;
cout<<endl;
out<<setw(2)<<name<<setw(5)<<sex<<setw(10)<<room_num<<setw(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<<" ";
char c;
cin>>c;}
else flag=1;
}while(flag==0);
}while(c=='y');
out.close();
break;
}
case '2': //增加数据
{char name[20],sex,room_num[10],parking[10],phone_num[20],ID_num[20],c;
out.open("E:\\a.dat",ios::app);
do
{
cout<<"请输入您要增加的住户的姓名:"<<endl<<endl;
cout<<" 请输入住户姓名:";
cin>>name;
cout<<endl<<" 请输入住户性别:";
cin>>sex;
cout<<endl<<" 请输入其房间号:";
cin>>room_num;
cout<<endl<<" 请输入其车库号:";
cin>>parking;
cout<<endl<<" 请输入联系电话:";
cin>>phone_num;
cout<<endl<<" 请输入身份证号:";
cin>>ID_num;
cout<<endl;
out<<setw(2)<<name<<setw(5)<<sex<<setw(10)<<room_num<<setw(10)<<parking<<setw(20)<<phone_num<<setw(20)<<ID_num; //文件输入
cout<<" 数据添加成功,想继续添加吗? y / n :"<<endl;
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 name[20],sex,room_num[10],parking[10],phone_num[20],ID_num[20],c;
char na[20],s,room[10],park[10],phone[20],ID[20];
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<<" 请输入新房间号:";
cin>>room;
cout<<endl<<" 请输入住户性别:";
cin>>s;
cout<<endl<<" 请输入其房间号:";
cin>>room;
cout<<endl<<" 请输入其车库号:";
cin>>park;
cout<<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(0,ios::cur);
f<<setw(5)<<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<<" 您想继续修改吗? 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 name[20],sex,room_num[10],room[10],parking[10],phone_num[20],ID_num[20];
cout<<" 请选择您要进行查询的方式:"<<endl<<endl<<" 1.按住户名查询"<<endl<<endl<<" 2.按房间号查询"<<endl<<endl;
int k;
cin>>k;
switch(k)
case 1: //按住户名查询
{char na[20];char c;
do{
in.open("E:\\a.dat",ios::in);
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<<" 您要查询的住户:"<<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)<<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<<" 指令错误!请重新输入!"<<endl;
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>>parking>>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<<setw(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')break;
if(c!='y'&&c!='n')
{cout<<" 指令错误!请重新输入!"<<endl;
cin>>c;}
}while(c=='y');
break;
default:cout<<"对不起,您输入的指令有误:";}break;
}break;
case '5': //信息浏览
{char name[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<<" 文件中已无数据"<<endl<<endl;in.close();break;}
cout<<" 本系统所有学生数据如下:"<<endl<<endl;
cout<<"姓名 性别 房间号 车库号 电话号码 身份证号 "<<endl;
while(!in.eof())
{in>>name>>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'6': //信息删除
{char name[20],na[20],sex,room_num[10],parking[10],phone_num[20],ID_num[20],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>>sex>>room_num>>parking>>phone_num>>ID_num;
s[n]=new livers(name,sex,room_num,parking,phone_num,ID_num);
liv[n]=*s[n];
delete s[n];
n++;}
in.close();
for(i=0;i<n;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<k;i++)
out<<setw(2)<<liv[i].name<<setw(5)<<liv[i].sex<<setw(10)<<liv[i].room_num<<setw(10)<<liv[i].parking<<setw(20)<<liv[i].phone_num<<setw(20)<<liv[i].ID_num;
for(i=k+1;i<n;i++)
out<<setw(2)<<liv[i].name<<setw(5)<<liv[i].sex<<setw(10)<<liv[i].room_num<<setw(10)<<liv[i].parking<<setw(20)<<liv[i].phone_num<<setw(20)<<liv[i].ID_num;
cout<<" 信息删除成功"<<endl<<endl;
}
if(n=1){}
out.close();
}
else
cout<<" 您要删除的住户不存在!"<<endl<<endl;
cout<<" 您想继续删除吗? 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'7': //退出
{cout<<"Bye bye! See you next time."<<endl<<endl;
cout<<" 王建制作"<<endl<<endl<<endl;exit(0); }break; }
}//以上为menu菜单中switch控制语句
cout<<" 您想继续进行其他操作吗? y / n :"<<endl<<" ";//以下控制循环语句
int flag=0;
do{cin>>w;
cout<<endl;
if(w=='n')exit(0);
if(w!='y'&&w!='n')
cout<<" 指令错误!请重新输入!"<<endl;
else
flag=1;
}while(flag==0);
if(w=='y')
{cout<<" 请输入操作代码: 1 输入数据"<<endl;
cout<<" 2 增加数据"<<endl;
cout<<" 3 修改数据"<<endl;
cout<<" 4 信息查询"<<endl;
cout<<" 5 信息浏览"<<endl;
cout<<" 6 信息删除"<<endl;
cout<<" 7 退出系统"<<endl;}
cin>>p;
}while(w=='y');//最外层的do-while循环
}//menu函数结束
int main()
{key();
menu();
return 0;
}
#include<string>
#include<fstream>
#include<stdlib.h>
#include<iomanip>
using namespace std;
class livers//livers类
{ private:
char name[20]; //姓名
char sex;
char room_num[10];
char parking[10];
char ID_num[20];
char phone_num[20];
public:
livers(){}
livers(char n[20],char s,char room[10],char park[10],char phone[20],char ID[20])
{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 mima[20],key[20];char yu_mima[20]="12345";
int flag;int p;char w;
ifstream in;
ofstream out;
fstream f; //输入输出对象
cout<<" ******************************************"<<endl;
cout<<" 欢迎登录小区物业管理系统 "<<endl;
cout<<" ******************************************"<<endl<<endl;
do{flag=0;
cout<<" 请输入管理员密钥:"<<endl;
in.clear();
in.open("E:\\c.dat",ios::in);
if(in.fail()) //首次登录
{cout<<endl<<" 欢迎首次登录,您的预设密码为 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,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、进入系统 *"<<endl;
cout<<" * 2、退出系统 *"<<endl;
cout<<" *************************"<<endl<<endl;
do{
do
{cout<<" 请输入您的指令(0~2):"<<endl;
cin>>p;
switch(p)
{
case 0: //修改密码
{cout<<" 请输入新密码:"<<endl;
cin>>key;
out.open("E:\\c.dat",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<<" 输入指令有误,请重新输入:"<<endl<<endl;break;
}
}while(p<0||p>2);
cout<<" 您想继续进行其他操作吗? y / n :"<<endl<<" ";
do{cin>>w;
cout<<endl;
if(w=='n')exit(0);
if(w!='y'&&w!='n')
cout<<" 指令错误!请重新输入!"<<endl;
}while(flag==0);
if(w=='y')
{cout<<" 请输入操作代码: 0 修改密码"<<endl;
cout<<" 1 进入系统"<<endl;
cout<<" 2 退出系统"<<endl;}
}while(w=='y');
} //密钥函数
void menu()
{cout<<" ******************************************"<<endl;
cout<<" 小区物业管理系统 "<<endl;
cout<<" ******************************************"<<endl;
cout<<" **************************"<<endl;
cout<<" * 主菜单命令如下所示: *"<<endl;
cout<<" * 1、输入数据 *"<<endl;
cout<<" * 2、增加数据 *"<<endl;
cout<<" * 3、修改数据 *"<<endl;
cout<<" * 4、信息查询 *"<<endl;
cout<<" * 5、信息浏览 *"<<endl;
cout<<" * 6、信息删除 *"<<endl;
cout<<" * 7、退出系统 *"<<endl;
cout<<" **************************"<<endl;
cout<<" 请输入您的指令数字(1~7)"<<endl<<" ";
char p;char w;
livers liv[50];
livers *s[50];
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': //信息输入
{char name[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<<endl<<" 请输入住户性别:";
cin>>sex;
cout<<endl<<" 请输入其房间号:";
cin>>room_num;
cout<<endl<<" 请输入其车库号:";
cin>>parking;
cout<<endl<<" 请输入联系电话:";
cin>>phone_num;
cout<<endl<<" 请输入身份证号:";
cin>>ID_num;
cout<<endl;
out<<setw(2)<<name<<setw(5)<<sex<<setw(10)<<room_num<<setw(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<<" ";
char c;
cin>>c;}
else flag=1;
}while(flag==0);
}while(c=='y');
out.close();
break;
}
case '2': //增加数据
{char name[20],sex,room_num[10],parking[10],phone_num[20],ID_num[20],c;
out.open("E:\\a.dat",ios::app);
do
{
cout<<"请输入您要增加的住户的姓名:"<<endl<<endl;
cout<<" 请输入住户姓名:";
cin>>name;
cout<<endl<<" 请输入住户性别:";
cin>>sex;
cout<<endl<<" 请输入其房间号:";
cin>>room_num;
cout<<endl<<" 请输入其车库号:";
cin>>parking;
cout<<endl<<" 请输入联系电话:";
cin>>phone_num;
cout<<endl<<" 请输入身份证号:";
cin>>ID_num;
cout<<endl;
out<<setw(2)<<name<<setw(5)<<sex<<setw(10)<<room_num<<setw(10)<<parking<<setw(20)<<phone_num<<setw(20)<<ID_num; //文件输入
cout<<" 数据添加成功,想继续添加吗? y / n :"<<endl;
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 name[20],sex,room_num[10],parking[10],phone_num[20],ID_num[20],c;
char na[20],s,room[10],park[10],phone[20],ID[20];
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<<" 请输入新房间号:";
cin>>room;
cout<<endl<<" 请输入住户性别:";
cin>>s;
cout<<endl<<" 请输入其房间号:";
cin>>room;
cout<<endl<<" 请输入其车库号:";
cin>>park;
cout<<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(0,ios::cur);
f<<setw(5)<<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<<" 您想继续修改吗? 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 name[20],sex,room_num[10],room[10],parking[10],phone_num[20],ID_num[20];
cout<<" 请选择您要进行查询的方式:"<<endl<<endl<<" 1.按住户名查询"<<endl<<endl<<" 2.按房间号查询"<<endl<<endl;
int k;
cin>>k;
switch(k)
case 1: //按住户名查询
{char na[20];char c;
do{
in.open("E:\\a.dat",ios::in);
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<<" 您要查询的住户:"<<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)<<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<<" 指令错误!请重新输入!"<<endl;
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>>parking>>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<<setw(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')break;
if(c!='y'&&c!='n')
{cout<<" 指令错误!请重新输入!"<<endl;
cin>>c;}
}while(c=='y');
break;
default:cout<<"对不起,您输入的指令有误:";}break;
}break;
case '5': //信息浏览
{char name[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<<" 文件中已无数据"<<endl<<endl;in.close();break;}
cout<<" 本系统所有学生数据如下:"<<endl<<endl;
cout<<"姓名 性别 房间号 车库号 电话号码 身份证号 "<<endl;
while(!in.eof())
{in>>name>>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'6': //信息删除
{char name[20],na[20],sex,room_num[10],parking[10],phone_num[20],ID_num[20],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>>sex>>room_num>>parking>>phone_num>>ID_num;
s[n]=new livers(name,sex,room_num,parking,phone_num,ID_num);
liv[n]=*s[n];
delete s[n];
n++;}
in.close();
for(i=0;i<n;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<k;i++)
out<<setw(2)<<liv[i].name<<setw(5)<<liv[i].sex<<setw(10)<<liv[i].room_num<<setw(10)<<liv[i].parking<<setw(20)<<liv[i].phone_num<<setw(20)<<liv[i].ID_num;
for(i=k+1;i<n;i++)
out<<setw(2)<<liv[i].name<<setw(5)<<liv[i].sex<<setw(10)<<liv[i].room_num<<setw(10)<<liv[i].parking<<setw(20)<<liv[i].phone_num<<setw(20)<<liv[i].ID_num;
cout<<" 信息删除成功"<<endl<<endl;
}
if(n=1){}
out.close();
}
else
cout<<" 您要删除的住户不存在!"<<endl<<endl;
cout<<" 您想继续删除吗? 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'7': //退出
{cout<<"Bye bye! See you next time."<<endl<<endl;
cout<<" 王建制作"<<endl<<endl<<endl;exit(0); }break; }
}//以上为menu菜单中switch控制语句
cout<<" 您想继续进行其他操作吗? y / n :"<<endl<<" ";//以下控制循环语句
int flag=0;
do{cin>>w;
cout<<endl;
if(w=='n')exit(0);
if(w!='y'&&w!='n')
cout<<" 指令错误!请重新输入!"<<endl;
else
flag=1;
}while(flag==0);
if(w=='y')
{cout<<" 请输入操作代码: 1 输入数据"<<endl;
cout<<" 2 增加数据"<<endl;
cout<<" 3 修改数据"<<endl;
cout<<" 4 信息查询"<<endl;
cout<<" 5 信息浏览"<<endl;
cout<<" 6 信息删除"<<endl;
cout<<" 7 退出系统"<<endl;}
cin>>p;
}while(w=='y');//最外层的do-while循环
}//menu函数结束
int main()
{key();
menu();
return 0;
}
- C++课程设计小区物业管理系统
- jsp小区物业管理系统
- 小区物业管理系统
- VB.NET小区物业管理系统
- Struts框架在小区物业管理系统中的应用
- 基于ASP.NET的智能小区物业管理系统
- 我的小区物业管理
- 小区物业管理优秀实践
- 物业管理系统(纯C)
- 小区物业管理系统 MyEclipse+MySQL+SSH 源码或者参考资料(静态页面也可以的)
- 小鸟Delphi商业源码003:小区物业管理
- 写字楼物业管理系统 官网
- 物业管理系统介绍
- 物业管理系统,物业软件
- C语言小区居民查询系统
- C语言课程设计 工资管理系统
- C语言课程设计 管理系统
- 课程设计:学生管理系统(c++)
- stl string常用函数
- 千呼万唤 HTML 5 (5) - 元素的通用属性
- nginx rewrite 参数和例子
- 函数指针
- 深入浅出linux内核源代码之双向链表list_head(上)
- C++课程设计小区物业管理系统
- 千呼万唤 HTML 5 (6) - 表单元素之 input 元素
- 一线网页游戏程序员日志 (十二)
- 千呼万唤 HTML 5 (7) - 表单元素
- struts注册信息验证的实现描述附带代码
- 千呼万唤 HTML 5 (8) - 画布(canvas)之绘制图形
- ie和火狐兼容问题(一)
- eclipse中的WEB项目打包部署到tomcat
- AJAX实现三级联动