C++课程设计《学生信息管理系统》代码

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

#include<iostream〉
#include〈fstream〉
#include〈string>
#include<iomanip>
using namespace std;
#define M 200 //可以存信息总量
int N=0; //学生总量
class student

public:
student();
void set(); //初始化信息,第一次对信息的录入
void add();//添加学生信息
void del();//删除某学生信息
void change();//修改某学生信息
void search();//查询某学生信息
void display();//显示全部学生信息
private:
static int num;
string name,sex,age,birthday,address,tel,Email;
};
int student::num=1000;
student::student() {}
///初始化文件
void student::set()

int i;
string setname,setsex,setage,setbirthday,setaddress,settel,setEmail;
ofstream outfile;
outfile。

open(”f1。

txt",ios::out); //-—-—打开文件————
if(!outfile)
{
cerr〈<” open error"〈〈endl;
exit(1);

//-——-依次录入相应个数的学生信息———-
for(i=0;i〈M;i++)
{
cout<<”当姓名输入为’0’时,停止输入!!!”〈〈endl;
cout<<”请输入姓名:”〈<endl;
cin〉〉setname;
name=setname;
if(setname=="0") break;
if(setname!=”0")

N++;
num++;
outfile〈〈num〈<” ”;
outfile<<setname<〈" ";
cout〈〈"请输入性别:”<〈endl;
cin〉〉setsex;
sex=setsex;
outfile<<setsex<<" ";
cout<<”请输入年龄:”<<endl;
cin〉〉setage;
age=setage;
outfile〈〈setage〈<" ”;
cout〈<"请输入出生日期:”〈<endl;
cin>〉setbirthday;
birthday=setbirthday;
outfile<<setbirthday<〈” ”;
cout<<”请输入家庭住址:"〈〈endl;
cin>〉setaddress;
address=setaddress;
outfile<〈setaddress〈〈” ”;
cout〈〈"请输入电话:”<<endl;
cin〉>settel;
tel=settel;
outfile〈〈settel〈<” ”;
cout〈〈”请输入电子邮箱:"<〈endl;
cin〉>setEmail;
Email=setEmail;
outfile〈<setEmail〈<" "<<endl;
}
}
outfile。

close(); //—--—关闭文件--——
}
///添加文件
void student::add()
{
string addname,addsex,addage,addbirthday,addaddress,addtel,addEmail;
//--—-以追加的方式录入信息,直接将信息追加到以前文件的末尾---- ofstream outfile("f1。

txt",ios::app);
if(!outfile)
{
cerr<〈" open error"〈〈endl;
exit(1);
}
N=N+1;
//--—-依次输入相应的数据,并且追加到之前的文件中去——-—
cout<〈”请输入您要添加的数据"〈〈endl;
num++;
outfile<〈num<〈" ";
cout〈<”请输入姓名:”<<endl;
cin〉〉addname;
outfile<〈addname<<" ”;
cout<<"请输入性别:"<<endl;
cin〉>addsex;
outfile<〈addsex〈〈" ";
cout<<”请输入年龄:”<<endl;
cin>〉addage;
outfile<〈addage〈<" ”;
cout<〈”请输入出生日期:”〈<endl;
cin〉>addbirthday;
outfile<〈addbirthday〈<" ”;
cout<<"请输入家庭住址:"<<endl;
cin>〉addaddress;
outfile〈<addaddress〈〈" ";
cout〈〈"请输入电话:”<〈endl;
cin〉>addtel;
outfile<<addtel〈〈" ”;
cout<<"请输入电子邮件:"<〈endl;
cin〉〉addEmail;
outfile<〈addEmail<〈endl;
outfile。

close();
cout<〈”已添加成功!”<<endl;
}
///删除文件
void student::del()
{
int k,i;
int num[M];
string name[M],sex[M],age[M],birthday[M],address[M],tel[M],Email[M];
ifstream infile(”f1。

txt”,ios::in);
if(!infile)

cerr<〈" open error"<<endl;
exit(1);

for(i=0;i〈N;i++)
{
cout<〈” ";
infile>>num[i];
cout<<setw(4)〈〈num[i];
infile>>name[i];
cout〈〈setw(7)〈〈name[i];
infile>>sex[i];
cout<〈setw(6)〈<sex[i];
infile>>age[i];
cout<<setw(6)〈〈age[i];
infile〉>birthday[i];
cout〈〈setw(12)〈<birthday[i];
infile〉>address[i];
cout〈〈setw(11)〈<address[i];
infile〉>tel[i];
cout<<setw(14)〈〈tel[i];
infile>〉Email[i];
cout〈〈setw(18)〈<Email[i]<〈endl;
}
cout<<"您想删除第几个学生信息?"〈〈endl;
cin〉>k;
k=k—1;
infile。

close();
ofstream outfile("f1.txt",ios::out);
if(!outfile)
{
cerr〈<” open error”〈<endl;
exit(1);//退出程序
}
//———-将数组存取的信息输出到文件中去---—for(i=0;i<N;i++)
{
if(i!=k)

outfile〈〈num[i]<〈” ";
outfile〈〈name[i]〈<” ”;
outfile<〈sex[i]<〈" ”;
outfile〈<age[i]<<" ";
outfile<〈birthday[i]<<” ";
outfile〈<address[i]<<” ”;
outfile<〈tel[i]〈<" ";
outfile<〈Email[i]<<" ”<<endl;
}
}
outfile。

close();
N=N—1;
cout〈<”已删除成功!"<<endl;
}
///修改文件
void student::change()

int i,k;
int num[M];
string name[M],sex[M],age[M],birthday[M],address[M],tel[M],Email[M];
ifstream infile(”f1。

txt”,ios::in);
if(!infile)
{
cerr<〈” open error”〈〈endl;
exit(1);

for(i=0;i〈N;i++)

cout<<" ”;
infile〉>num[i];
cout<〈setw(4)〈<num[i];
infile〉〉name[i];
cout<<setw(7)<〈name[i];
infile>>sex[i];
cout〈〈setw(6)〈〈sex[i];
infile〉>age[i];
cout<〈setw(6)〈〈age[i];
infile>>birthday[i];
cout〈〈setw(12)〈〈birthday[i];
infile〉>address[i];
cout<<setw(11)<〈address[i];
infile〉>tel[i];
cout<〈setw(14)〈<tel[i];
infile>>Email[i];
cout〈<setw(18)〈〈Email[i]〈〈endl;
}
infile.close();
ofstream outfile("f1。

txt",ios::out);
if(!outfile)

cerr<<” open error”〈〈endl;
exit(1);
}
cout〈〈"您想修改第几个学生信息?"<<endl;
cin〉〉k;
k=k—1;
cout〈〈"请输入新的数据:"<<endl;
cout〈〈"请输入姓名:”〈〈endl;
cin>>name[k];
cout〈<"请输入性别:"<<endl;
cin〉>sex[k];
cout<<"请输入年龄:"<<endl;
cin〉〉age[k];
cout〈〈”请输入出生日期:"<〈endl;
cin>>birthday[k];
cout〈<"请输入家庭住址:”〈〈endl;
cin〉〉address[k];
cout〈<”请输入电话:”<<endl;
cin〉>tel[k];
cout<〈”请输入电子邮箱:"<<endl;
cin〉〉Email[k];
for(i=0;i<N;i++)

outfile〈<num[i]〈<” ”;
outfile<<name[i]〈〈” ";
outfile<<sex[i]<〈" ";
outfile<<age[i]<<" ";
outfile<<birthday[i]〈<” ”;
outfile〈〈address[i]〈<” ";
outfile〈<tel[i]〈<” ";
outfile<<Email[i]〈〈” ”〈<endl;

outfile.close();
cout<<"已修改成功!"〈<endl;

///查询文件
void student::search()

int i,n,w=0,num[M],a[M];char ch;
string searchname,name[M],sex[M],age[M],birthday[M],address[M],tel[M],Email [M],b[M][7];
cout<<”a。

按学号查找 b.按姓名查找"〈<endl;
ifstream infile("f1.txt”,ios::in);
if(!infile)

cerr〈<" open error"〈〈endl;
exit(1);

for(i=0;i〈N;i++)
{
infile〉>num[i];a[i]=num[i];
infile〉〉name[i];b[i][0]=name[i];
infile>〉sex[i];b[i][1]=sex[i];
infile〉>age[i];b[i][2]=age[i];
infile>>birthday[i];b[i][3]=age[i];
infile〉>address[i];b[i][4]=age[i];
infile〉>tel[i];b[i][5]=address[i];
infile〉>Email[i];b[i][6]=age[i];
}
cout〈<"请输入a或者b!”<〈endl;
cin>〉ch;
if(ch==’a')
{
cout〈〈”请输入学号!"〈<endl;
cin>>n;
for(i=0;i〈N;i++)
if(a[i]==n)
{
w=1;
cout<<”学号姓名性别年龄出生日期家庭住址电话邮箱”〈<endl;
cout<〈" ”;
cout<〈setw(4)〈<a[i];
cout〈<setw(7)<<b[i][0];
cout<〈setw(6)<<b[i][1];
cout〈〈setw(6)<〈b[i][2];
cout〈〈setw(12)〈<b[i][3];
cout〈〈setw(11)〈<b[i][4];
cout<<setw(14)〈<b[i][5];
cout〈〈setw(18)<〈b[i][6]<<endl;

if(w==0)
cout<〈"无此人信息!"〈<endl;

else if(ch==’b')

cout〈<"请输入姓名!”<<endl;
cin〉〉searchname;
for(i=0;i〈N;i++)
if(name[i]==searchname)
{
w=1;
cout<<" 学号姓名性别年龄出生日期家庭住址电话邮箱"〈<endl;
cout<<setw(4)〈〈a[i];
cout〈〈setw(7)<〈b[i][0];
cout<<setw(6)〈<b[i][1];
cout<<setw(6)〈<b[i][2];
cout<<setw(12)<<b[i][3];
cout<〈setw(11)<〈b[i][4];
cout<〈setw(14)<<b[i][5];
cout<〈setw(18)〈〈b[i][6]〈〈endl;

if(w==0)
cout<〈"无此人信息!"〈<endl;

else cout<<”没有此选项!”<〈endl;
}
///显示文件
void student::display()

int k,num;
string name,sex,age,birthday,address,tel,Email;
ifstream infile(”f1。

txt",ios::in);
if(!infile)
{
cerr〈<" 0open error”<〈endl;
exit(1);

cout〈<”学号姓名性别年龄出生日期家庭住址电话邮箱”<<endl;
for(k=0;k〈N;k++)
{
cout〈〈” ";
infile〉>num;
cout〈〈setw(4)<<num;
infile〉>name;
cout<<setw(7)<<name;
infile〉〉sex;
cout〈<setw(6)<〈sex;
infile〉〉age;
cout〈<setw(6)<〈age;
infile〉>birthday;
cout〈〈setw(12)<〈birthday;
infile>>address;
cout<〈setw(11)〈<address;
infile>>tel;
cout<〈setw(14)〈<tel;
infile>>Email;
cout〈<setw(18)<〈Email<〈endl;
}
infile.close();
}
student stu;
void main()
{
char ch;
void menu();
menu();
cin〉>ch;
while(ch!='0’)
{
system(”cls”);
switch(ch)
{
case '1':stu.set();break;
case ’2’:stu.add();break;
case '3’:stu.del();break;
case '4’:stu。

change();break;
case '5':stu。

search();break;
case '6':stu.display();break;
case '0':cout<<”退出系统!”;break;
default:cout〈<”没有此选项!”<〈endl;break;

menu();
cin>〉ch;
}
}
void menu()
{
cout〈<"****欢迎进入学生信息管理系统****”〈<endl;
cout〈〈”* 1.输入学生信息*”<〈endl;
cout<〈”* 2.添加学生信息*"<〈endl;
cout〈<"*3。

删除学生信息*”〈<endl;
cout<〈”* 4.修改学生信息*"〈〈endl;
cout〈〈"* 5。

查询学生信息*"<<endl;
cout<〈”*6。

浏览全部学生信息*"<<endl;
cout〈〈”*0。

退出学生信息*"〈〈endl;
cout<〈”********************************”<〈endl;}。

相关文档
最新文档