📄 信息删除.cpp
字号:
#include<iostream>
#include<fstream>
#include<iomanip>
#include"学生信息定义.h"
using namespace std;
void student::shanchu ()
{
int i,j,a;
student stu[60];
string name;
ifstream infile("studentnum.txt",ios::in);
if(!infile)
{
cerr<<"studentnum.txt open error:"<<endl;
exit(1);
}
infile>>stu_num;
infile.close();
ifstream infile1("student.txt",ios::in);
if(!infile1)
{
cerr<<"student.txt open error:"<<endl;
exit(1);
}
for(i=0;i<=stu_num;i++)
{
infile1>>stu[i].name
>>stu[i].number
>>stu[i].age
>>stu[i].sex
>>stu[i].addr
>>stu[i].phone
>>stu[i].room_num;
}
infile1.close();
cout<<"请输入您要删除的学生姓名:"<<endl;
cin>>name;
for(i=0;i<=stu_num;i++)
{
if(name==stu[i].name)
{
cout<<"您要删除学生的信息为:"<<endl;
cout<<""<<endl;
cout<<"姓名 学号 年龄 性别 家庭住址 电话 寝室号"<<endl;
cout<<setw(2)<<stu[i].name
<<setw(7)<<stu[i].number
<<setw(6)<<stu[i].age
<<setw(6)<<stu[i].sex
<<setw(16)<<stu[i].addr
<<setw(17)<<stu[i].phone
<<setw(8)<<stu[i].room_num<<endl;
}
a=i;
}
ofstream outfile("student.txt",ios::out);
if(!outfile)
{
cerr<<"student.txt open error:"<<endl;
exit(1);
}
for(i=0;i<=stu_num;i++)
{
if(name==stu[i].name)
{
for(j=1;j<a;j++)
{
outfile<<stu[i].name
<<" "<<stu[i].number
<<" "<<stu[i].age
<<" "<<stu[i].sex
<<" "<<stu[i].addr
<<" "<<stu[i].phone
<<" "<<stu[i].room_num<<endl;
}//outfile.close();
for(j=a+1;j<stu_num;j++)
{
outfile<<stu[i].name
<<" "<<stu[i].number
<<" "<<stu[i].age
<<" "<<stu[i].sex
<<" "<<stu[i].addr
<<" "<<stu[i].phone
<<" "<<stu[i].room_num<<endl;
}
}
}
outfile.close();
cout<<"信息删除成功!"<<endl;
stu_num--;
ofstream outfile1("studentnum.txt",ios::out);
if(!outfile1)
{
cerr<<"open error:"<<endl;
exit(1);
}
outfile1<<stu_num;
outfile1.close();
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -