#include<iostream>
#include<fstream>
#include<string.h>
#include<iomanip>
#include"student.h"
using namespace std;
Student S[50];
void Student::input()
{
loop:
int num,a=0,t;
for(int s=0;s<=50;s++)
{
cout<<"请输入学号:"<<endl;
cin>>num;
ifstream file("学生信息管理系统.txt",ios::binary);
file.seekg(0,ios::beg);
for(int i=0;i<50;i++)
{
file.read((char *)&S[i],sizeof(S[i]));
if(num==S[i].num)a=1;
if(S[i].num==0){t=i;i=50;}
}
if(a==1)
{
cout<<"您输入的学号不合规则或已存在!"<<endl;
goto loop;
}
else
S[t].num=num;
cout<<"请输入姓名:"<<endl;
cin>>S[t].name;
cout<<"请输入性别(男或女):"<<endl;
cin>>S[t].sex;
cout<<"请输入年龄:"<<endl;
cin>>S[t].age;
cout<<"请输入院系:"<<endl;
cin>>S[t].Departments;
cout<<"请输入班级:"<<endl;
cin>>S[t].gread;
cout<<"请输入成绩"<<endl<<"C++"<<endl;
cin>>S[t].c;
cout<<"English"<<endl;
cin>>S[t].English;
s=50;
}
ofstream file("学生信息管理系统.txt");
for(int i=0;i<1;i++)
{file.write((char *)&S[i],sizeof(S[i]));}
file.close();
}
void Student::look()
{
ifstream file("学生信息管理系统.txt",ios::binary);
file.seekg(0,ios::beg);
for(int i=0;i<50;i++)
{
file.read((char *)&S[i],sizeof(S[i]));
if(S[i].num!=0)
cout<<" 学号:"<<S[i].num
<<" 姓名:"<<setw(8)<<S[i].name
<<" 年龄:"<<setw(3)<<S[i].age
<<" 性别:"<<setw(2)<<S[i].sex
<<" 院系:"<<S[i].Departments
<<" 班级:"<<S[i].gread
<<" C: "<<S[i].c
<<" English: "<<S[i].English<<endl;
}file.close();
}
void Student::find()
{
cout<<"请选择查找方法:"
<<" 1.按姓名 "
<<" 2.按学号."<<endl<<endl
<<"请选择操作:";
int f;cin>>f;
if(f==1)
{
cout<<"请输入要查找的姓名:";
char name[20];
int j;
cin>>name;
ifstream file("学生信息管理系统.txt",ios::binary);
file.seekg(0,ios::beg);
for(int i=0;i<50;i++)
{
file.read((char *)&S[i],sizeof(S[i]));
if(strcmp(name,S[i].name)==0)
{j=1;
cout<<endl
<<"所查找到的信息是:"<<endl
<<" 学号 :"<<S[i].num<<endl
<<" 姓名 :"<<S[i].name<<endl
<<" 年龄 :"<<S[i].age<<endl
<<" 性别 :"<<S[i].sex<<endl
<<" 院系 :"<<S[i].Departments<<endl
<<" 班级 :"<<S[i].gread<<endl
<<" C: "<<S[i].c<<endl
<<" English: "<<S[i].English
<<endl;
i=50;}
}
if (j!=1) cout<<"未找到相应信息!"<<endl;
file.close();
}
else
{
cout<<"请输入要查找的学号:";
int num;
int j;
cin>>num;
ifstream file("学生信息管理系统.txt",ios::binary);
file.seekg(0,ios::beg);
for(int i=0;i<50;i++)
{
file.read((char *)&S[i],sizeof(S[i]));
if(num==S[i].num)
{j=1;
cout<<"所查找的到信息是:"<<endl<<endl
<<" 学号 :"<<S[i].num<<endl
<<" 姓名 :"<<S[i].name<<endl
<<" 年龄 :"<<S[i].age<<endl
<<" 性别 :"<<S[i].sex<<endl
<<" 院系 :"<<S[i].Departments<<endl
<<" 班级 :"<<S[i].gread<<endl
<<" C: "<<S[i].c<<endl
<<" English: "<<S[i].English
<<endl;
i=50;}
}
if (j!=1) cout<<"未找到相应信息!"<<endl;
}
}
void Student::change()
{
cout<<"请输入学号:"<<endl;
int t,j,anum;
cin>>num;
ifstream file("学生信息管理系统.txt",ios::in|ios::out|ios::binary);
file.seekg(0,ios::beg);
for(int i=0;i<50;i++)
{
file.read((char *)&S[i],sizeof(S[i]));
if(num==S[i].num)
{j=1,t=i;}
}
file.close();
if(j!=1)
{cout<<"未找到相应信息!"<<endl<<endl ;}
else
{
if(t!=-1)
{ofstream iofile("学生信息管理系统.txt",ios::in|ios::out|ios::binary);
cout<<"修改?(y or n)"<<endl;
char c;cin>>c;
if(c=='y')
{
loop:
cout<<"原学号:"<<S[t].num<<" "<<"新学号:"<<endl;
cin>>anum;
int a=0;
for(int s=0;s<=50;s++)
{
ifstream file("学生信息管理系统.txt",ios::binary);
file.seekg(0,ios::beg);
for(int i=0;i<50;i++)
{
file.read((char *)&S[i],sizeof(S[i]));
if(S[i].num==anum)a=1;
}
if(a==1)
{
cout<<"您输入的学号不合规则或已存在!"<<endl;
goto loop;
}
}
S[t].num=anum;
cout<<"原姓名:"<<S[t].name<<" "<<"新姓名:"<<endl;
cin>>S[t].name;
cout<<"原年龄:"<<S[t].age<<" "<<"新年龄:"<<endl;
cin>>S[t].age;
cout<<"原性别:"<<S[t].sex<<" "<<"新性别:"<<endl;
cin>>S[t].sex;
cout<<"原班级:"<<S[t].gread<<" "<<"新班级:"<<endl;
cin>>S[t].gread;
cout<<"原C++成绩:"<<S[t].c<<" "<<"新C成绩:"<<endl;
cin>>S[t].c;
cout<<"原English成绩:"<<S[t].English<<" "<<"新English成绩:"<<endl;
cin>>S[t].English;
iofile.seekp(t*sizeof(S[t]),ios::beg);
iofile.write((char *)&S[t],sizeof(S[t]));
cout<<"已经成功修改!"<<endl;
}
}
}
}
void Student::delet()
{
cout<<"请输入学号:"<<endl;
int num,j,i;
cin>>num;
ifstream file("学生信息管理系统.txt",ios::in|ios::out|ios::binary);
for(i=0;i<50;i++)
{
file.read((char *)&S[i],sizeof(S[i]));
if(num==S[i].num)
{
j=1;
ofstream file("学生信息管理系统.txt",ios::in|ios::out|ios::binary);
cout<<"删除?(y or n)"<<endl;
char c;cin>>c;
if(c=='y')
{
S[i].num=0;
S[i].name[0]='0';
S[i].age=0;
S[i].sex[0]='0';
S[i].gread[0]='0';
S[i].Departments[0]='0';
S[i].c=0;
S[i].English=0;
file.seekp(i*sizeof(S[i]),ios::beg);
file.write((char *)&S[i],sizeof(S[i]));
i=50;
cout<<"已成功删除!";
}
}
}
if(j!=1)cout<<"未找到相应信息!";
}
int main()
{
cout<<"欢迎来到学生信息管理系统";
cout<<"是否以管理员身份登录Y/N"<<endl;
char n;
int l,k;
cin>>n;
if(n=='Y'){
cout<<"请输入密码";
lop:
cin>>l;
if(l==123456)
k=10;
else {cout<<"密码输入错误,重新输入";
goto lop;}
}
if(k==10){
loop:
cout<<endl<<endl<<endl;
cout<<" **********************************"<<endl;
cout<<" 学生信息管理系统 "<<endl;
cout<<" **********************************"<<endl;
cout<<" 1.录 入 信 息 2.查 看 信 息 "<<endl;
cout<<" 3.查 找 信 息 4.删 除 信 息 "<<endl;
cout<<" 5.修 改 信 息 0.安 全 退 出 "<<endl;
cout<<" **********************************"<<endl;
cout<<endl;
cout<<"请选择操作(0-5):"<<endl;
int m;
cin>>m;Student s;
switch(m)
{
case 1: s.input(); goto loop;break;
case 2: s.look(); goto loop;break;
case 3: s.find(); goto loop;break;
case 4: s.delet() ;goto loop;break;
case 5: s.change();goto loop;break;
case 0: ;break;
default:cout<<"错误!"<<endl;break;
}
}
else {
lp:
cout<<endl<<endl<<endl;
cout<<" **********************************"<<endl;
cout<<" 学生信息管理系统 "<<endl;
cout<<" **********************************"<<endl;
cout<<" 1.浏 览 信 息 "<<endl;
cout<<" 2.查 找 信 息 "<<endl;
cout<<" 0.安 全 退 出 "<<endl;
cout<<" **********************************"<<endl;
cout<<endl;
cout<<"请选择操作(0-2):"<<endl;
int m;
cin>>m;Student s;
switch(m)
{
case 1: s.look(); goto lp;break;
case 2: s.find(); goto lp;break;
case 0: ;break;
default:cout<<"输入错误!"<<endl;break;
}
}
return 0;
}
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
wangzan.rar (3个子文件)
学生信息管理系统 wangzan
王赞 需求分析、流程图.wps 88KB
student.cpp 303B
学生信息管理系统.cpp 7KB
共 3 条
- 1
资源评论
wangyunzan123
- 粉丝: 32
- 资源: 4
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功