同学录管理系统
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
cin>>a;
stud[i].age=a;
cout<<"新的性别:";
cin>>s;
strcpy(stud[i].sex,s);
cout<<"新的出生年月:"<<endl;
cout<<"年:";
cin>>y;
stud[i].year=y;
cout<<"月:"<<endl;
cin>>m;
stud[i].month=m;
cin>>n;
for(i=0;i<renshu;i++)
{
if(stud[i].num==n)
{
t=i;
flag=1;
cout<<"找到了您要删除的同学信息!"<<endl;
for( t<renshu;t++;)
{
a[t]=t+1;
}
for(i=0;i<renshu-1;i++)
{
cout<<"这是第"<<(i+1)<<"个同学"<<endl;
cout<<"新的email:";
cin>>e;
strcpy(stud[i].email,e);
flag=1;
cout<<endl<<endl;
cout<<"修改后同学的信息为:"<<endl;
cout<<"这是第"<<(i+1)<<"个同学"<<endl;
cout<<"学号:"<<stud[i].num<<endl;
cout<<endl<<endl;
cout<<"同学录信息管理系统的菜单:"<<endl;
cout<<endl<<endl;
cout<<" 1.同学信息添加"<<endl;
cout<<" 2.同学信息浏览"<<endl;
cout<<"姓名:";
cin>>stud[i].name;
cin>>stud[i].month;
cout<<"地址:";
cin>>stud[i].address;
cout<<"电话:";
cin>>stud[i].email;
cout<<endl<<endl;
outfile.write((char*)&stud[i],sizeof(student1)); //将&stud[i]这个指针所指向的内容输出,每次输出的数据单元占sizeof(student1)个字节
cin>>xm; //输入姓名
for(i=0;i<renshu;i++)
{
if(strcmp(stud[i].name,xm)==0)
//strcmp用来比较字符串和xm
{
cout<<"这是第"<<(i+1)<<"个同学"<<endl;
cout<<"学号:"<<stud[i].num<<endl;
cout<<"姓名:"<<stud[i].name<<endl;
cout<<"新的姓名:";
cin>>na;
strcpy(stud[i].name,na);cout<<"新的年龄:";
cin>>a;
stud[i].age=a;
cout<<"新的性别:";
cin>>s;
strcpy(stud[i].sex,s);
cout<<"新的出生年月:"<<endl;
cout<<"年:";
cout<<endl<<endl;
}
}
//对同学信息的查询
void student2::inquiry()
{
int m,flag=0;
long n;
char xm[20];
cout<<"1.按姓名查询;2.按电话查询.请选择!"<<endl;
cin>>m;
if(m==1)
{
cout<<"请输入姓名:";
cout<<"电话:"<<stud[i].phonenumber<<endl;
cout<<"Email:"<<stud[i].email<<endl;
}
}
if(flag==0)
cout<<"没有找到您要修改的同学信息:"<<endl;
}
//界面函数
void student2::face()
{
int i;
cout<<"年:"<<stud[a[i]].year<<endl;
cout<<"月:"<<stud[a[i]].month<<endl;
cout<<"地址:"<<stud[a[i]].address<<endl;
cout<<"电话:"<<stud[a[i]].phonenumber<<endl;
cout<<"Email:"<<stud[a[i]].email<<endl;
cout<<"姓名:"<<stud[i].name<<endl;
cout<<"年龄:"<<stud[i].age<<endl;
cout<<"性别:"<<stud[i].sex<<endl;
cout<<"出生年月:"<<stud[i].year<<" "<<stud[i].month<<endl;
cout<<"地址:"<<stud[i].address<<endl;
/*同学录管理系统
*程序员:江陈瓒
*制作时间:2013-07-02
*修改履历:
*/
#include <iostream> //iostream为内置型类型对象提供了输入输出支持,同时也支持文件的输入输出
#include <cstring> //使用CString可以对字符串的操作更加直截了当
#include <fstream> //文件流,主要提供操作文件函数
cin>>n;
cout<<endl<<endl;
for(i=0;i<renshu;i++)
{
if(stud[i].num==n)
{
cout<<"这是第"<<(i+1)<<"个同学"<<endl;
cout<<"姓名:"<<stud[i].name<<endl;
cout<<"地址:"<<stud[i].address<<endl;
cout<<"学号:"<<stud[a[i]].num<<endl;
cout<<"姓名:"<<stud[a[i]].name<<endl;
cout<<"年龄:"<<stud[a[i]].age<<endl;
cout<<"性别:"<<stud[a[i]].sex<<endl;
cout<<"出生年月:"<<endl;
}
outfile.close(); //输出文件关闭
}
//对同学信息的显示
void student2::display()
{
student1 s[m];
ifstream infile("D:\\classmates.txt",ios::binary); //将信息从硬盘中调到内存中,以二进制的方式进行读取内存
{
int j,a[m],t,flag=0;
long n;
char na[20];
for(i=0;i<renshu;i++)
{
a[i]=i;
}
cout<<"1.按电话删除;2.按姓名删除.";
cout<<"请您做出选择!"<<endl;
cin>>j;
if(j==1)
{
cout<<"输入您要删除的学号:";
if(!infile)
{
cout<<"对不起,打开失败哦!"<<endl;
abort();
//终止
}
for(i=0;i<renshu;i++)
infile.read((char*)&s[i],sizeof(student1)); //一旦读取成功,循环读取,读取&s[i]这个指针所指向的内容,每次输出的数据单元占sizeof(student1))个字节
using namespace std;
const int m=100; //定义常量m
int i;
struct student1 //定义结构体
{
long num ;
char name[20]; //自动申请内存空间,用完自动释放内存空间,下同
int age;
char sex[10];
long year;
cout<<endl<<endl;
}
}
}
if(flag==0)
{
cout<<"没有找到您要的删除同学的信息!"<<endl;
}
}
}
//对同学信息的修改
void student2::update()
{ห้องสมุดไป่ตู้
int n,flag=0;
char na[20];
int a;
char s[10];
long y;
int m;
void del(); //删除信息函数
void update(); //修改信息函数
void face(); //界面浏览函数
void tishi(); //提示用户下一步操作函数
void quit(); //退出操作函数
protected:
student1 stud[m];
int renshu;
abort(); //程序异常终止进程
}
cout<<"请输入你们班人数:";
cin>>renshu;
cout<<endl<<endl;
for(i=0;i<renshu;i++) //用for循环语句实现对同学学号,姓名,年龄,性别,出生年月,地址,电话,Email等的添加录入
{
cout<<"这是第"<<(i+1)<<"个同学的信息:"<<endl;
cout<<"********************************************************************************"<<endl;
cout<<"欢迎使用同学录信息管理系统!"<<endl;
cout<<"********************************************************************************"<<endl;
cout<<"电话:"<<stud[i].phonenumber<<endl;
cout<<"Email:"<<stud[i].email<<endl;
flag=1;
}
}
if(flag==0)
cout<<"没有您要查找的同学信息!"<<endl;
}
}
//对同学信息的删除
void student2::del()
infile.close();
for(i=0;i<renshu;i++) //循环输出
{
cout<<"第"<<(i+1)<<"个同学的信息:"<<endl;
cout<<"姓名:"<<s[i].name<<endl;
cout<<"地址:"<<s[i].address<<endl;
cout<<"电话:"<<s[i].phonenumber<<endl;
};
//对同学信息的录入
void student2::add()
{
ofstream
outfile("D:\\classmates.txt",ios::binary); //建立classmates.txt文件,用于存储录入的内容,并以二进制的方式进存储
if(!outfile) //如果目录不存在
{
cout<<"对不起,文件打开失败!"<<endl; //报错
cout<<"年龄:"<<stud[i].age<<endl;
cout<<"性别:"<<stud[i].sex<<endl;
cout<<"出生年月:"<<endl;
cout<<"年:"<<stud[i].year<<endl;
cout<<"月:"<<stud[i].month<<endl;
cout<<"地址:"<<stud[i].address<<endl;
cin>>y;
stud[i].year=y;
cout<<"月:";
cin>>m;
stud[i].month=m;
cout<<"新的地址:";
cin>>add;
strcpy(stud[i].address,add);
cout<<"新的电话:";
cin>>phn;
stud[i].phonenumber=phn;
char add[30];
long phn;
char e[100];
cout<<"输入您要修改的同学学号:";
cin>>n;
for(i=0;i<renshu;i++)
{
if(stud[i].num==n)
{
cout<<"新的姓名:";
cin>>na;
strcpy(stud[i].name,na);
cout<<"新的年龄:";
int month;
char address[30];
long phonenumber;
char email[100];
};
class student2 //定义类
{
public:
void add(); //添加录入函数
void display(); //申明一个名为display的显示输出函数
void inquiry(); //查询信息函数
cout<<"电话:"<<stud[i].phonenumber<<endl;
flag=1; //用flag提示用户有没有找到所要查询的同学信息
}
}
if(flag==0) //0表没有找到
cout<<"没有找到您查查找的同学信息!"<<endl;
}
if(m==2)
{
cout<<"请输入姓名:"<<endl;
stud[i].age=a;
cout<<"新的性别:";
cin>>s;
strcpy(stud[i].sex,s);
cout<<"新的出生年月:"<<endl;
cout<<"年:";
cin>>y;
stud[i].year=y;
cout<<"月:"<<endl;
cin>>m;
stud[i].month=m;
cin>>n;
for(i=0;i<renshu;i++)
{
if(stud[i].num==n)
{
t=i;
flag=1;
cout<<"找到了您要删除的同学信息!"<<endl;
for( t<renshu;t++;)
{
a[t]=t+1;
}
for(i=0;i<renshu-1;i++)
{
cout<<"这是第"<<(i+1)<<"个同学"<<endl;
cout<<"新的email:";
cin>>e;
strcpy(stud[i].email,e);
flag=1;
cout<<endl<<endl;
cout<<"修改后同学的信息为:"<<endl;
cout<<"这是第"<<(i+1)<<"个同学"<<endl;
cout<<"学号:"<<stud[i].num<<endl;
cout<<endl<<endl;
cout<<"同学录信息管理系统的菜单:"<<endl;
cout<<endl<<endl;
cout<<" 1.同学信息添加"<<endl;
cout<<" 2.同学信息浏览"<<endl;
cout<<"姓名:";
cin>>stud[i].name;
cin>>stud[i].month;
cout<<"地址:";
cin>>stud[i].address;
cout<<"电话:";
cin>>stud[i].email;
cout<<endl<<endl;
outfile.write((char*)&stud[i],sizeof(student1)); //将&stud[i]这个指针所指向的内容输出,每次输出的数据单元占sizeof(student1)个字节
cin>>xm; //输入姓名
for(i=0;i<renshu;i++)
{
if(strcmp(stud[i].name,xm)==0)
//strcmp用来比较字符串和xm
{
cout<<"这是第"<<(i+1)<<"个同学"<<endl;
cout<<"学号:"<<stud[i].num<<endl;
cout<<"姓名:"<<stud[i].name<<endl;
cout<<"新的姓名:";
cin>>na;
strcpy(stud[i].name,na);cout<<"新的年龄:";
cin>>a;
stud[i].age=a;
cout<<"新的性别:";
cin>>s;
strcpy(stud[i].sex,s);
cout<<"新的出生年月:"<<endl;
cout<<"年:";
cout<<endl<<endl;
}
}
//对同学信息的查询
void student2::inquiry()
{
int m,flag=0;
long n;
char xm[20];
cout<<"1.按姓名查询;2.按电话查询.请选择!"<<endl;
cin>>m;
if(m==1)
{
cout<<"请输入姓名:";
cout<<"电话:"<<stud[i].phonenumber<<endl;
cout<<"Email:"<<stud[i].email<<endl;
}
}
if(flag==0)
cout<<"没有找到您要修改的同学信息:"<<endl;
}
//界面函数
void student2::face()
{
int i;
cout<<"年:"<<stud[a[i]].year<<endl;
cout<<"月:"<<stud[a[i]].month<<endl;
cout<<"地址:"<<stud[a[i]].address<<endl;
cout<<"电话:"<<stud[a[i]].phonenumber<<endl;
cout<<"Email:"<<stud[a[i]].email<<endl;
cout<<"姓名:"<<stud[i].name<<endl;
cout<<"年龄:"<<stud[i].age<<endl;
cout<<"性别:"<<stud[i].sex<<endl;
cout<<"出生年月:"<<stud[i].year<<" "<<stud[i].month<<endl;
cout<<"地址:"<<stud[i].address<<endl;
/*同学录管理系统
*程序员:江陈瓒
*制作时间:2013-07-02
*修改履历:
*/
#include <iostream> //iostream为内置型类型对象提供了输入输出支持,同时也支持文件的输入输出
#include <cstring> //使用CString可以对字符串的操作更加直截了当
#include <fstream> //文件流,主要提供操作文件函数
cin>>n;
cout<<endl<<endl;
for(i=0;i<renshu;i++)
{
if(stud[i].num==n)
{
cout<<"这是第"<<(i+1)<<"个同学"<<endl;
cout<<"姓名:"<<stud[i].name<<endl;
cout<<"地址:"<<stud[i].address<<endl;
cout<<"学号:"<<stud[a[i]].num<<endl;
cout<<"姓名:"<<stud[a[i]].name<<endl;
cout<<"年龄:"<<stud[a[i]].age<<endl;
cout<<"性别:"<<stud[a[i]].sex<<endl;
cout<<"出生年月:"<<endl;
}
outfile.close(); //输出文件关闭
}
//对同学信息的显示
void student2::display()
{
student1 s[m];
ifstream infile("D:\\classmates.txt",ios::binary); //将信息从硬盘中调到内存中,以二进制的方式进行读取内存
{
int j,a[m],t,flag=0;
long n;
char na[20];
for(i=0;i<renshu;i++)
{
a[i]=i;
}
cout<<"1.按电话删除;2.按姓名删除.";
cout<<"请您做出选择!"<<endl;
cin>>j;
if(j==1)
{
cout<<"输入您要删除的学号:";
if(!infile)
{
cout<<"对不起,打开失败哦!"<<endl;
abort();
//终止
}
for(i=0;i<renshu;i++)
infile.read((char*)&s[i],sizeof(student1)); //一旦读取成功,循环读取,读取&s[i]这个指针所指向的内容,每次输出的数据单元占sizeof(student1))个字节
using namespace std;
const int m=100; //定义常量m
int i;
struct student1 //定义结构体
{
long num ;
char name[20]; //自动申请内存空间,用完自动释放内存空间,下同
int age;
char sex[10];
long year;
cout<<endl<<endl;
}
}
}
if(flag==0)
{
cout<<"没有找到您要的删除同学的信息!"<<endl;
}
}
}
//对同学信息的修改
void student2::update()
{ห้องสมุดไป่ตู้
int n,flag=0;
char na[20];
int a;
char s[10];
long y;
int m;
void del(); //删除信息函数
void update(); //修改信息函数
void face(); //界面浏览函数
void tishi(); //提示用户下一步操作函数
void quit(); //退出操作函数
protected:
student1 stud[m];
int renshu;
abort(); //程序异常终止进程
}
cout<<"请输入你们班人数:";
cin>>renshu;
cout<<endl<<endl;
for(i=0;i<renshu;i++) //用for循环语句实现对同学学号,姓名,年龄,性别,出生年月,地址,电话,Email等的添加录入
{
cout<<"这是第"<<(i+1)<<"个同学的信息:"<<endl;
cout<<"********************************************************************************"<<endl;
cout<<"欢迎使用同学录信息管理系统!"<<endl;
cout<<"********************************************************************************"<<endl;
cout<<"电话:"<<stud[i].phonenumber<<endl;
cout<<"Email:"<<stud[i].email<<endl;
flag=1;
}
}
if(flag==0)
cout<<"没有您要查找的同学信息!"<<endl;
}
}
//对同学信息的删除
void student2::del()
infile.close();
for(i=0;i<renshu;i++) //循环输出
{
cout<<"第"<<(i+1)<<"个同学的信息:"<<endl;
cout<<"姓名:"<<s[i].name<<endl;
cout<<"地址:"<<s[i].address<<endl;
cout<<"电话:"<<s[i].phonenumber<<endl;
};
//对同学信息的录入
void student2::add()
{
ofstream
outfile("D:\\classmates.txt",ios::binary); //建立classmates.txt文件,用于存储录入的内容,并以二进制的方式进存储
if(!outfile) //如果目录不存在
{
cout<<"对不起,文件打开失败!"<<endl; //报错
cout<<"年龄:"<<stud[i].age<<endl;
cout<<"性别:"<<stud[i].sex<<endl;
cout<<"出生年月:"<<endl;
cout<<"年:"<<stud[i].year<<endl;
cout<<"月:"<<stud[i].month<<endl;
cout<<"地址:"<<stud[i].address<<endl;
cin>>y;
stud[i].year=y;
cout<<"月:";
cin>>m;
stud[i].month=m;
cout<<"新的地址:";
cin>>add;
strcpy(stud[i].address,add);
cout<<"新的电话:";
cin>>phn;
stud[i].phonenumber=phn;
char add[30];
long phn;
char e[100];
cout<<"输入您要修改的同学学号:";
cin>>n;
for(i=0;i<renshu;i++)
{
if(stud[i].num==n)
{
cout<<"新的姓名:";
cin>>na;
strcpy(stud[i].name,na);
cout<<"新的年龄:";
int month;
char address[30];
long phonenumber;
char email[100];
};
class student2 //定义类
{
public:
void add(); //添加录入函数
void display(); //申明一个名为display的显示输出函数
void inquiry(); //查询信息函数
cout<<"电话:"<<stud[i].phonenumber<<endl;
flag=1; //用flag提示用户有没有找到所要查询的同学信息
}
}
if(flag==0) //0表没有找到
cout<<"没有找到您查查找的同学信息!"<<endl;
}
if(m==2)
{
cout<<"请输入姓名:"<<endl;