#include<iostream>
#include<string>
using namespace std;
class Student
{
public:
Student(void);
~Student(void);
void input();
void display();
friend ostream&operator<<(ostream&,Student&);
friend istream&operator<<(istream&,Student&);
int num;
string name;
char sex;
int age;
string Class;
string college;
string zhuanye;
};
//#include "Student.h"
Student::Student(void)
{
}
Student::~Student(void)
{
}
void Student::input()
{
cout<<"请输入学生信息:(学号、姓名、性别、年龄、班级、学院、专业)"<<endl;
cin>>num>>name>>sex>>age>>Class>>college>>zhuanye;
}
void Student::display()
{
cout<<"学号:"<<num<<" 姓名:"<<name<<" 性别:"<<sex<<" 年龄:"<<age<<" 班级:"<<Class<<" 学院:"<<college<<" 专业:"<<zhuanye;
}
//#include"Student.h"
#include<fstream>
ostream&operator<<(ostream&output,Student&c)
{
output<<"学号:"<<c.num<<" 姓名:"<<c.name<<" 性别:"<<c.sex<<" 年龄:"<<c.age<<" 班级:"<<c.Class<<" 学院:"<<c.college<<" 专业:"<<c.zhuanye;
return output;
}
istream&operator>>(istream&input,Student&c)
{
input>>c.num>>c.name>>c.sex>>c.age>>c.Class>>c.college>>c.zhuanye;
return input;
}
int main()
{
int c=0;
Student a[100];
int n=0;
int m=0;
int b=0;
cout<<"1 :创建"<<endl;
cout<<"2 :添加"<<endl;
cout<<"3 :查询"<<endl;
cout<<"4 :修改"<<endl;
cout<<"5 :删除"<<endl;
cout<<"6 :显示"<<endl;
cout<<"7 :文件导入"<<endl;
cout<<"8 :文件导出"<<endl;
cout<<"9 :退出"<<endl;
while(c!=9)
{
cout<<"请输入1到9之间的选项!"<<endl;
cin>>c;
while (c<1||c>9)
{
cout<<"请重新输入选项!"<<endl;
cin>>c;
}
switch(c)
{
case 1:
{
cout<<"请输入要创建学生信息的个数: ";
cin>>n;
for(int i=0;i<n;i++)
{
a[i].input();
}
}
break;
case 2:
{
cout<<"请输入要添加的学生信息的个数: ";
cin>>m;
for(int i=n;i<n+m;i++)
{
a[i].input();
}
}
break;
case 3:
{
int q;
cout<<"选择按学号查询,输入 1"<<endl;
cout<<"选择按班级和专业查询,输入 2"<<endl;
cin>>q;
while(q!=1&&q!=2)
{
cout<<"请重新选择!"<<endl;
cin>>q;
}
if(q==1)
{
int h;
cout<<"请输入查询的学号: ";
cin>>h;
for(int i=0;i<n+m-b;i++)
{
if(h==a[i].num)
a[i].display();
}
}
if(q==2)
{
string str1,str2;
cout<<"请输入查询的班级和专业: ";
cin>>str1>>str2;
for(int i=0;i<n+m-b;i++)
{
if((str1==a[i].Class)&&(str2==a[i].zhuanye))
a[i].display();
}
}
}
break;
case 4:
{
int x;
cout<<"请输入修改的学号: ";
cin>>x;
for(int i=0;i<n+m-b;i++)
{
if(x==a[i].num)
a[i].input();
}
}
break;
case 5:
{
string na;
cout<<"请输入你想删除学生的姓名: ";
cin>>na;
b=b+1;
for(int i=0;i<100;i++)
{
if(a[i].name==na)
{
for(int p=i;p<n+m-b;p++)
{
a[p]=a[p+1];
}
}
break;
}
}
break;
case 6:
{
for(int i=0;i<n+m-b;i++)
a[i].display();
}
break;
case 7:
{
int i;
ifstream infile("xinxi.dat", ios::in);
if (!infile)
{
cerr << "Open error!" << endl;
exit(1);
}
for(i=0;i<n+m;i++)
infile>>a[i];
for(i=0;i<n+m;i++)
cout<<a[i]<<endl;
infile.close();
}
break;
case 8:
{
int i;
ofstream outfile;
outfile.open("xinxi.dat",ios::out);
if (!outfile)
{
cerr << "Open error!" << endl;
exit(1);
}
for (i = 0; i < n + m - b; i++)
outfile<<a[i];
outfile.close();
}
break;
case 9:break;
}
}
return 0;
}
学生基本信息管理系统(C++)
猜你喜欢
转载自blog.csdn.net/y0205yang/article/details/118653095
今日推荐
周排行