用C++设计的简单学生学籍管理系统

求求各位大哥大姐解决小弟的难题啊... 求求各位大哥大姐解决小弟的难题啊 展开
 我来答
hughxing
推荐于2016-06-06 · TA获得超过4358个赞
知道小有建树答主
回答量:495
采纳率:0%
帮助的人:0
展开全部
/*
这是本人刚学习C++不久时写的一个学生信息管理系统,基本功能没问题。
*/

/*下面分几个文件
你可以先建立一个空工程,然后将这几个文件分别添加到工程中(应该会吧?),或者你把文件分别保存,最后打开“学生信息管理系统.cpp”直接编译、连接(会询问建立一个默认的工程)。此程序在VC6.0环境下测试通过。
*/

//文件“学生信息管理系统.cpp”
#include<iostream>
#include<fstream>
#include"common.h"
#include"信息录入.cpp"
#include"信息查询.cpp"
#include"信息排序.cpp"
#include"信息修改.cpp"
#include"信息删除.cpp"
using namespace std;

int main()
{
int a;
h1: cout<<" —*—*—学生信息管理系统—*—*—"<<endl<<endl;
cout<<"1----学生基本信息录入 2----学生信息查询"<<endl;
cout<<"3----学生信息排序 4----学生信息修改"<<endl;
cout<<"5----学生信息删除 0----退出"<<endl;
ifstream infile("record_n.txt",ios::in);
infile>>record_n; //读取record_n,获知文件student.dat中保存有几个学生的数据
infile.close();
h2: cout<<"已经记录有"<<record_n<<"个学生的数据,请选择:";
cin>>a;
switch(a)
{
case 0:return 0;break;
case 1:info_input();break;
case 2:info_inquire();break;
case 3:info_sort();break;
case 4:info_update();break;
case 5:info_delete();break;
default:cout<<"Error!"<<endl<<endl;goto h2;
}
cout<<endl;
goto h1;
return 0;
}

//文件“信息修改.cpp”
#include<iostream>
#include<fstream>
#include <iomanip>
using namespace std;

/*————————————信息修改函数——————————————*/
void info_update()
{
int i,j,answer,num;
student stud1[n],stud2[n];
cout<<"请输入要修改的学生学号(返回请输入0):";
cin>>num;
if(num==0)goto h0;
else
{
ifstream infile("student.dat",ios::binary);
if(!infile)
{
cerr<<"Open file error!"<<endl;
exit(1);
}
if(record_n==0)cout<<"Error!\n没有记录"<<endl;
else
{
for(i=0;i<record_n;i++) //读取所有数据到一个数组
{
infile.read((char *)&stud1[i],sizeof(stud1[i]));
}
}
/*进行对比,找到相应学号*/
infile.close();
for(i=0;i<record_n;i++)
{
if(num==stud1[i].num) //判断,如果符合查询条件则输出到屏幕
{
cout<<"学号:"<<setw(20)<<stud1[i].num<<" 姓名:"<<setw(20)<<stud1[i].name<<endl;
cout<<"性别:"<<setw(20)<<stud1[i].sex<<" 出生年月:"<<setw(10)<<stud1[i].birthday.year<<"年"<<stud1[i].birthday.month<<"月 "<<endl;
cout<<"电话号码:"<<setw(16)<<stud1[i].phone<<" 来自省份:"<<setw(16)<<stud1[i].address<<endl<<endl;
j=i; //记录要修改学号的序号
}
}
for(i=0;i<record_n;i++) //此句和下一句if语句是判断有无该学号,无则提示
{
if(num==stud1[i].num)break;
}
if(i>=record_n)
{
cout<<"Error!\n未找到该学号,";
goto h0;
}

for(i=0;i<j;i++)
stud2[i]=stud1[i];
for(i=j+1;i<record_n;i++)
stud2[i]=stud1[i];
cout<<"请按照姓名、性别、出生年、月、电话号码、省份的顺序输入学生新信息(若要修改学号请删除该记录后重新录入新信息):"<<endl;
/*将对应学号的信息和其他学号信息记录到stud2[],清空原文件后写入文件*/
stud2[j].num=stud1[j].num;
cin>>stud2[j].name>>stud2[j].sex>>stud2[j].birthday.year>>stud2[j].birthday.month>>stud2[j].phone>>stud2[j].address;
ha: cout<<"是否确定修改该记录?确定输入1,返回输入0"<<endl;
cin>>answer;
if(answer==0)goto h0;
if(answer!=0&&answer!=1)
{
cout<<"Error!"<<endl;
goto ha;
}
if(answer==1)
{
fstream iofile("student.dat",ios::out|ios::binary);
if(!iofile)
{
cerr<<"Open file error!"<<endl;
exit(1);
}
for(i=0;i<record_n;i++)
{
iofile.write((char *)&stud2[i],sizeof(stud2[i]));
}
iofile.close();
cout<<"该学生信息修改完毕!"<<endl;
}
}
h0: cout<<endl;
}

//文件“信息删除.cpp”
#include<iostream>
#include<fstream>
#include <iomanip>
using namespace std;

/*————————————信息删除函数——————————————*/
void info_delete()
{
int i,j,answer,num;
student stud1[n],stud2[n];
cout<<"返回请输入0,删除全部学生信息请输入-1"<<endl;
cout<<"请输入要删除的学生学号:";
cin>>num;
if(num==-1)
{
ofstream outfile("record_n.txt",ios::out);
if(!outfile)
{
cerr<<"Open file error!"<<endl;
abort();
}
outfile<<0; //数据个数恢复为0
outfile.close();
fstream iofile("student.dat",ios::out|ios::binary);
if(!iofile)
{
cerr<<"Open file error!"<<endl;
exit(1);
}
iofile.close();
cout<<"学生信息已经全部删除"<<endl;

}
else
{
if(num==0)goto h0;
else
{
ifstream infile("student.dat",ios::binary);
if(!infile)
{
cerr<<"Open file error!"<<endl;
exit(1);
}
if(record_n==0)cout<<"Error!\n没有记录"<<endl;
else
{
for(i=0;i<record_n;i++) //读取所有数据到一个数组
{
infile.read((char *)&stud1[i],sizeof(stud1[i]));
}
}
infile.close();
/*进行对比,找到相应学号*/
for(i=0;i<record_n;i++)
{
if(num==stud1[i].num) //判断,如果符合查询条件则输出到屏幕
{
cout<<"学号:"<<setw(20)<<stud1[i].num<<" 姓名:"<<setw(20)<<stud1[i].name<<endl;
cout<<"性别:"<<setw(20)<<stud1[i].sex<<" 出生年月:"<<setw(10)<<stud1[i].birthday.year<<"年"<<stud1[i].birthday.month<<"月 "<<endl;
cout<<"电话号码:"<<setw(16)<<stud1[i].phone<<" 来自省份:"<<setw(16)<<stud1[i].address<<endl<<endl;
j=i; //记录要删除学号的序号
}
}
for(i=0;i<record_n;i++) //此句和下一句if语句是判断有无该学号,无则提示
{
if(num==stud1[i].num)break;
}
if(i>=record_n)
{
cout<<"Error!\n未找到该学号,";
goto h0;
}
ha: cout<<"是否确定删除该记录?确定输入1,返回输入0"<<endl;
cin>>answer;
if(answer==0)goto h0;
if(answer!=0&&answer!=1)
{
cout<<"Error!"<<endl;
goto ha;
}
if(answer==1)
{
/*将对应学号去掉后,剩余学生信息用stud2[]记录,清空原文件,再写入文件*/
for(i=0;i<j;i++)
stud2[i]=stud1[i];
for(i=j;i<record_n-1;i++)
stud2[i]=stud1[i+1];
ofstream outfile("record_n.txt",ios::out);
if(!outfile)
{
cerr<<"Open file error!"<<endl;
abort();
}
outfile<<record_n-1; //记录数据个数
outfile.close();
fstream iofile("student.dat",ios::out|ios::binary);
if(!iofile)
{
cerr<<"Open file error!"<<endl;
exit(1);
}
for(i=0;i<record_n-1;i++)
{
iofile.write((char *)&stud2[i],sizeof(stud2[i]));
}
iofile.close();
cout<<"该学号已经删除"<<endl;
}
}
}
h0: cout<<endl;
}

//文件“信息排序.cpp”
#include<iostream>
#include<fstream>
#include <iomanip>
using namespace std;

/*————————————信息排序函数————————————*/
void info_sort()
{
int i;
cout<<endl<<"1—按学号排序,2—按出生年月排序,0—返回"<<endl;
h3: cout<<"请选择:";
cin>>i;
switch(i)
{
case 0:goto h7;
case 1:sort_num();break;
case 2:sort_day();break;
default:cout<<"Error!"<<endl<<endl;goto h3;
}
h7: cout<<endl;
}

/*—————按照学号排序函数—————*/
void sort_num()
{
int i,j;
student stud1[n],t;
ifstream infile("student.dat",ios::binary);
if(!infile)
{
cerr<<"Open file error!"<<endl;
exit(1);
}
if(record_n==0)cout<<"Error!\n没有记录"<<endl;
else
{
for(i=0;i<record_n;i++)
{
infile.read((char *)&stud1[i],sizeof(stud1[i]));
}
}
for(i=0;i<record_n-1;i++) //用起泡法对所有学号进行排序
{
for(j=0;j<record_n-i-1;j++)
{
if(stud1[j].num>stud1[j+1].num)
{
t=stud1[j];
stud1[j]=stud1[j+1];
stud1[j+1]=t;
}
}
}
infile.close();
/*将排序好的数据写入文件*/
ofstream outfile("student.dat",ios::out|ios::binary);
if(!outfile)
{
cerr<<"Open file error!"<<endl;
exit(1);
}
for(i=0;i<record_n;i++)
{
outfile.write((char *)&stud1[i],sizeof(stud1[i]));
}
outfile.close();
cout<<"排序完成";
cout<<endl;
}

/*————按照出生年月排序函数————*/
void sort_day()
{
int i,j;
student stud1[n],t;
ifstream infile("student.dat",ios::binary);
if(!infile)
{
cerr<<"Open file error!"<<endl;
exit(1);
}
if(record_n==0)cout<<"Error!\n没有记录"<<endl;
else
{
for(i=0;i<record_n;i++)
{
infile.read((char *)&stud1[i],sizeof(stud1[i]));
}
}
/*以下对学生的出生年月进行排序*/

for(i=0;i<record_n-1;i++) //用起泡法对学生出生年份进行排序
{
for(j=0;j<record_n-i-1;j++)
{
if(stud1[j].birthday.year>stud1[j+1].birthday.year)
{
t=stud1[j];
stud1[j]=stud1[j+1];
stud1[j+1]=t;
}
}
}
for(i=0;i<record_n-1;i++) //用起泡法对出生年份相同的学生的出生月份进行排序
{
for(j=0;j<record_n-i-1;j++)
{
if(stud1[j].birthday.year==stud1[j+1].birthday.year)
{
if(stud1[j].birthday.month>stud1[j+1].birthday.month)
{
t=stud1[j];
stud1[j]=stud1[j+1];
stud1[j+1]=t;
}
}
}
}
infile.close();
/*将排序好的数据写入文件*/
ofstream outfile("student.dat",ios::out|ios::binary);
if(!outfile)
{
cerr<<"Open file error!"<<endl;
exit(1);
}
for(i=0;i<record_n;i++)
{
outfile.write((char *)&stud1[i],sizeof(stud1[i]));
}
outfile.close();
cout<<endl<<"排序完成"<<endl;
}

//文件“信息录入.cpp”
#include<iostream>
#include<fstream>
#include <iomanip>
using namespace std;

/*——————信息录入函数——————*/
void info_input()
{
int i=0,j;
student stud1[n];
student *p,*p1;
p=stud+i;
p1=stud1+record_n;
ifstream infile("student.dat",ios::binary);
if(record_n==0)cout<<endl;
else
{
if(!infile)
{
cerr<<"Open file error!"<<endl;
exit(1);
}
for(i=0;i<record_n;i++) //for语句读取记录到一个数组,便于进行比较,使输入学号不重复
{
infile.read((char *)&stud1[i],sizeof(stud1[i]));
}
infile.close();
cout<<endl;
}
cout<<"请按以下顺序输入学生信息:学号、姓名、性别、出生年、月、电话号码、省份";
cout<<endl<<"如果要终止录入学生信息,请输入0,然后回车"<<endl<<endl;

for(i=0;i<n;i++,p++,p1++)
{
cout<<"请输入第"<<record_n+i+1<<"个学生的信息:";
cin>>p->num;
p1->num=p->num;
if(p->num==0)break;
for(j=0;j<record_n+i;j++)
{
if(p->num==stud1[j].num)
{
cout<<"Error!\n输入的学号与已有记录重复!"<<endl;
goto hi;
}
}
cin>>p->name>>p->sex;
cin>>p->birthday.year>>p->birthday.month;
cin>>p->phone>>p->address;
ofstream outfile("student.dat",ios::app|ios::binary);
if(!outfile)
{
cerr<<"Open file error!"<<endl;
abort();
}
outfile.write((char *)&stud[i],sizeof(stud[i]));
outfile.close();
fstream iofile("record_n.txt",ios::out);
if(!iofile)
{
cerr<<"Open file error!"<<endl;
abort();
}
iofile<<record_n+i+1; //记录数据个数
iofile.close();
}
hi: cout<<endl;

}

//文件“信息查询.cpp”
#include<iostream>
#include<fstream>
#include <iomanip>
using namespace std;

/*——————————————信息查询函数————————————*/

void info_inquire()
{
int i;
h6: cout<<endl<<"1—按学号查询, 2—按姓名查询, 3—按性别查询,"<<endl;
cout<<"4—输出全部学生信息, 0—返回"<<endl;
h3: cout<<"请选择:";
cin>>i;
switch(i)
{
case 0:goto h7;
case 1:acc_num();break;
case 2:acc_name();break;
case 3:acc_sex();break;
case 4:output_all();break;
default:cout<<"Error!"<<endl<<endl;goto h3;
}
goto h6;
h7: cout<<endl;
}
/*————按照学号查询函数—————*/
void acc_num()
{
int i;
int num;
student stud1[n];
ifstream infile("student.dat",ios::binary);
if(!infile)
{
cerr<<"Open file error!"<<endl;
goto h5;
}
h4: cout<<"请输入要查询的学生的学号(返回请输入0):"<<endl;
cin>>num;
if(num==0)
{
infile.close();
goto h5;
}
for(i=0;i<record_n;i++) //for语句读取记录到一个数组
{
infile.read((char *)&stud1[i],sizeof(stud1[i]));
}
infile.close();
for(i=0;i<record_n;i++)
{
if(num==stud1[i].num) //判断,如果符合查询条件则输出到屏幕
{
cout<<"学号:"<<setw(20)<<stud1[i].num<<" 姓名:"<<setw(20)<<stud1[i].name<<endl;
cout<<"性别:"<<setw(20)<<stud1[i].sex<<" 出生年月:"<<setw(10)<<stud1[i].birthday.year<<"年"<<stud1[i].birthday.month<<"月 "<<endl;
cout<<"电话号码:"<<setw(16)<<stud1[i].phone<<" 来自省份:"<<setw(16)<<stud1[i].address<<endl<<endl;
}

}
for(i=0;i<record_n;i++) //此句和下一句if语句是判断有无该学号,无则提示
{
if(num==stud1[i].num)break;
}
if(i>=record_n)cout<<"Error!\n未找到该学号,";
goto h4;
h5: cout<<endl;
}

/*————按照姓名查询函数—————*/
void acc_name()
{
int i;
char name[20];
student stud1[n];
ifstream infile("student.dat",ios::binary);
if(!infile)
{
cerr<<"Open file error!"<<endl;
goto h5;
}
h4: cout<<"请输入要查询的学生的姓名(返回请输入0):"<<endl;
cin>>name;
if(strcmp(name,"0")==0)
{
infile.close();
goto h5;
}
for(i=0;i<record_n;i++)
{
infile.read((char *)&stud1[i],sizeof(stud1[i]));
}
infile.close();
for(i=0;i<record_n;i++)
{
if(strcmp(name,stud1[i].name)==0)
{
cout<<"学号:"<<setw(20)<<stud1[i].num<<" 姓名:"<<setw(20)<<stud1[i].name<<endl;
cout<<"性别:"<<setw(20)<<stud1[i].sex<<" 出生年月:"<<setw(10)<<stud1[i].birthday.year<<"年"<<stud1[i].birthday.month<<"月 "<<endl;
cout<<"电话号码:"<<setw(15)<<stud1[i].phone<<" 来自省份:"<<setw(15)<<stud1[i].address<<endl<<endl;
}
}
for(i=0;i<record_n;i++) //此句和下一句if语句是判断有无该姓名,无则提示
{
if(strcmp(name,stud1[i].name)==0)break;
}
if(i>=record_n)cout<<"Error!\n未找到该姓名,";
goto h4;
h5: cout<<endl;
}

/*————按照性别查询函数—————*/
void acc_sex()
{
int i;
char sex[5];
student stud1[n];
ifstream infile("student.dat",ios::binary);
if(!infile)
{
cerr<<"Open file error!"<<endl;
goto h5;
}
h4: cout<<"请输入要查询的学生的性别(返回请输入0):"<<endl;
cin>>sex;
if(strcmp(sex,"0")==0)
{
infile.close();
goto h5;
}
for(i=0;i<record_n;i++)
{
infile.read((char *)&stud1[i],sizeof(stud1[i]));
}
infile.close();
for(i=0;i<record_n;i++)
{
if(strcmp(sex,stud1[i].sex)==0)
{
cout<<"学号:"<<setw(20)<<stud1[i].num<<" 姓名:"<<setw(20)<<stud1[i].name<<endl;
cout<<"性别:"<<setw(20)<<stud1[i].sex<<" 出生年月:"<<setw(10)<<stud1[i].birthday.year<<"年"<<stud1[i].birthday.month<<"月 "<<endl;
cout<<"电话号码:"<<setw(15)<<stud1[i].phone<<" 来自省份:"<<setw(15)<<stud1[i].address<<endl<<endl;
}
}
for(i=0;i<record_n;i++) //此句和下一句if语句是判断有无该性别的学生记录,无则提示
{
if(strcmp(sex,stud1[i].sex)==0)break;
}
if(i>=record_n)cout<<"Error!\n未找到该性别的学生记录,";
goto h4;
h5: cout<<endl;
}

/*————输出全部学生信息—————*/
void output_all()
{
int i;
student stud1[n];
ifstream infile("student.dat",ios::binary);
if(!infile)
{
cerr<<"Open file error!"<<endl;
goto h0;
}
if(record_n==0)cout<<"Error!\n没有记录"<<endl;
else
{
for(i=0;i<record_n;i++)
{
infile.read((char *)&stud1[i],sizeof(stud1[i]));
cout<<"第"<<i+1<<"个学生数据:"<<endl;
cout<<"学号:"<<setw(20)<<stud1[i].num<<" 姓名:"<<setw(20)<<stud1[i].name<<endl;
cout<<"性别:"<<setw(20)<<stud1[i].sex<<" 出生年月:"<<setw(10)<<stud1[i].birthday.year<<"年"<<stud1[i].birthday.month<<"月 "<<endl;
cout<<"电话号码:"<<setw(15)<<stud1[i].phone<<" 来自省份:"<<setw(15)<<stud1[i].address<<endl<<endl;
}
}
infile.close();
h0: cout<<endl;
}

//文件“common.h”
/*—————————定义类—————————定义类——————*/
struct Day //定义结构体类型Day
{
int year;
int month;
};

class student //定义类student
{
public:
int num;
char name[20];
char sex[5];
Day birthday;
char phone[15];
char address[15];
};

/*—————全局变量、函数声明————全局变量、函数声明—————*/

const int n=200; //n=200,表示最多可记录200个学生的数据,可以修改,以适应需要
int record_n=0; //记录数据个数,初始化为0
student stud[n];
void info_input(); //信息录入函数
void info_inquire(),acc_num(),acc_name(),acc_sex(),output_all();//信息查询函数
void info_sort(),sort_num(),sort_day(); //信息排序函数
void info_update(); //信息修改函数
void info_delete(); //信息删除函数
校管家
2024-12-23 广告
培训机构教务系统是一款专为培训机构设计的综合管理软件,旨在提升机构的教学质量和管理效率。该系统涵盖学员管理、课程管理、排课管理、财务管理等功能,可帮助机构实现精细化管理,提高学员满意度。通过该系统,培训机构可以更好地安排课程、优化师资资源配... 点击进入详情页
本回答由校管家提供
ahaubit
2009-11-27 · TA获得超过1453个赞
知道小有建树答主
回答量:637
采纳率:0%
帮助的人:773万
展开全部
/*
数据描述:学号 姓名 班级 高数 英语 总分

程序完成功能:

(1) 浏览数据 (2) 增加数据 (3) 修改数据

(4) 查询数据(按姓名,按总分) (5) 退出
*/

#include<iostream>
#include<string>
#include<vector>
using namespace std;

class student
{
public:
student(int , string ,int ,int ,int );
string getName(){return _name;};
int getID(){return _ID;};
void setID(int i){_ID=i;};
void setName(string);
void setClass(int c){_class=c;};
void setMath(int m){_math=m;_total=_math+_english;};
void setEnglish(int e){_english=e;_total=_math+_english;}
void print();

static int _stNum;
private:
int _ID;
string _name;
int _class;
int _math;
int _english;
int _total;
};
int student::_stNum=0;
student::student(int id, string name, int iclass, int ma, int en)
{
_ID=id;
_name=name;
_class=iclass;
_math=ma;
_english=en;
_total=_math+_english;
_stNum++;
};

void student::setName(string s)
{
_name=s;
};

void student::print()
{

cout<<_ID
<<"\t"<< _name
<<"\t"<<_class
<<"\t"<<_math
<<"\t"<<_english
<<"\t"<<_total <<endl;

}

void printMenu(void);
void printHead(void);
void printTail(int);

void main()
{
int tmp_ID;
string tmp_name;
int tmp_class;
int tmp_math;
int tmp_english;
int order=0;
vector<student> stvec;

printMenu();
cin>>order;

while(order!=5)
{
switch(order)
{
case 1:
if (stvec.size()==0)
{
cout<<"ERR:---->No data in the system!"<<endl<<endl;
printMenu();
cin>>order;
break;
}
else
{
vector<student>::iterator iter=stvec.begin();
vector<student>::iterator iter_end=stvec.end();
printHead();
for(;iter!=iter_end;iter++)
{

(*iter).print();
}
printTail(stvec.size());
printMenu();
cin>>order;

break;
}

case 2:
cout<<"Insert-->ID:";
cin>>tmp_ID;
cout<<"Insert-->Name:";
cin>>tmp_name;
cout<<"Insert-->Class:";
cin>>tmp_class;
cout<<"Insert-->Mark of Math:";
cin>>tmp_math;
cout<<"Insert-->Mark of English:";
cin>>tmp_english;
stvec.push_back(student(tmp_ID,tmp_name,tmp_class,tmp_math,tmp_english));

printMenu();
cin>>order;
break;

case 3:
{
string search_name;
bool isFind=false;
cout<<"\nOrignal_Update-->Name:";
cin>>search_name;
vector<student>::iterator iter=stvec.begin();
vector<student>::iterator iter_end=stvec.end();
for(;iter!=iter_end;iter++)
{
if( (*iter).getName()==search_name )
{
isFind=true;
cout<<"New_Update-->ID:";
cin>>tmp_ID;
cout<<"New_Update-->Name:";
cin>>tmp_name;
cout<<"New_Update-->Class:";
cin>>tmp_class;
cout<<"New_Update-->Mark of Math:";
cin>>tmp_math;
cout<<"New_Update-->Mark of English:";
cin>>tmp_english;

(*iter).setID(tmp_ID);
(*iter).setName(tmp_name);
(*iter).setClass(tmp_class);
(*iter).setMath(tmp_math);
(*iter).setEnglish(tmp_english);
}
}
if(!isFind)
{
cout<<"There no student named "<<search_name<<endl;
}
printMenu();
cin>>order;
break;
}
case 4:
string search_name;
int search_ID;
int name_ID=0;
bool isFind=false;
cout<<"-----------"<<endl;
cout<<"1.Name:"<<endl;
cout<<"2.ID:"<<endl;
cout<<"-----------"<<endl;
cin>>name_ID;

if (name_ID==1)
{
cout<<"\nSearch-->name:"<<endl;
cin>>search_name;
vector<student>::iterator iter=stvec.begin();
vector<student>::iterator iter_end=stvec.end();
for(;iter!=iter_end;iter++)
{
if( (*iter).getName()==search_name )
{
if(!isFind)
{
cout<<endl<<"Your search:"<<endl;
printHead();
}
(*iter).print();
isFind=true;
}
}
if(isFind){ cout<<"-------------------------------------------------"<<endl;}
if(!isFind)
{
cout<<"There no student named :"<<search_name<<endl;
}
printMenu();
cin>>order;
break;
}

if (name_ID==2)
{
cout<<"\nSearch-->ID:"<<endl;
cin>>search_ID;
vector<student>::iterator iter=stvec.begin();
vector<student>::iterator iter_end=stvec.end();
for(;iter!=iter_end;iter++)
{
if( (*iter).getID()==search_ID)
{
if(!isFind)
{cout<<endl<<"Your search:"<<endl;
printHead();}
(*iter).print();
isFind=true;
}
}
if(isFind){ cout<<"-------------------------------------------------"<<endl;}
if(!isFind)
{
cout<<"There no student ID :"<<search_name<<endl;
}
printMenu();
cin>>order;
break;

}
}
}
}

void printMenu(void)
{
cout<<endl<<"*************Make**your**choice***************"<<endl;
cout<<"1. View the data"<<endl;
cout<<"2. ADD the data"<<endl;
cout<<"3. Update the data"<<endl;
cout<<"4. Search the data"<<endl;
cout<<"5. Quit"<<endl;
cout<<"********************************************"<<endl<<endl;
}

void printHead(void)
{
cout<<"-------------------------------------------------"<<endl;
cout<<"ID\tName\tClass\tMath\tEnglish\tTotal"<<endl;
}

void printTail(int i)
{
cout<<"There are total ";
if (i ==1)
{cout<< i<<" student"<<endl;}
else if(i >1)
{cout<<i<<" students"<<endl;}
cout<<"-------------------------------------------------"<<endl;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
huzhe292
2009-11-27 · TA获得超过210个赞
知道答主
回答量:89
采纳率:0%
帮助的人:55.6万
展开全部
要别人跟你写程序,不给钱不说。才给5分悬赏,你还是自己想办法吧。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式