回 帖 发 新 帖 刷新版面

主题:求助啊~~各位大虾帮忙给做个注释啊,快要交实验报告啦!!!

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

/********************************************/ 

struct Student 

string testnum; 
string name; 
string college; 
string grade; 
string language; 
string score; 
}; 

/********************************************/ 

class fbFindByNum 

public: 
fbFindByNum(string num):m_num(num){} 
bool operator()(const Student& s) 

if(m_num==s.testnum) 
return true; 
else  
return false; 

private: 
string m_num; 
}; 

/********************************************/ 


class fbFindByName 

public: 
fbFindByName(string name):m_name(name){} 
bool operator()(const Student& s) 

if(m_name==s.name) 
return true; 
else  
return false; 

private: 
string m_name; 
}; 

/********************************************/ 

class fbCountByGrade4 

public: 
bool operator()(const Student& s) 

if("4"==s.grade) 
return true; 
else  
return false; 

}; 

/********************************************/ 

class fbCountByGrade6 

public: 
bool operator()(const Student& s) 

if("6"==s.grade) 
return true; 
else  
return false; 

}; 


/********************************************/ 

class StuSys 

public: 
void menu(); 
void add_record(); 
void delete_record(); 
void select(); 
void modify(); 
void statistic(); 
void compositor(); 
void show(); 
void grasyc();
private: 
vector<Student> vStu; 
}; 

/********************************************/ 

void StuSys::menu() 

system("cls"); 
cout<<"************###************\n"; 
cout<<"学生四六级考试成绩管理!\n"; 
cout<<"~~~~~~~~~~~~~~~~~~~~~~~~~~~\n"; 
cout<<"***************************\n"; 
cout<<"1.增添\n"; 
cout<<"2.删除\n"; 
cout<<"3.查询\n"; 
cout<<"4.修改\n"; 
cout<<"5.统计\n";  
cout<<"6.演示\n"; 
cout<<"7.退出\n"; 
cout<<"***************************\n";
 
cin.clear(); 
cin.sync(); 
char choice=cin.get(); 

switch(choice) 

case '1': 
add_record(); break; 
case '2': 
delete_record(); break; 
case '3': 
select(); break; 
case '4': 
modify(); break; 
case '5': 
statistic(); break; 
case '6': 
show(); break; 
case '7': 
; break; 
default: 
menu(); 




/********************************************/ 

void StuSys::add_record() 

system("cls"); 
cin.clear(); 
cin.sync(); 
cout<<"请输入学生的考试信息:\n"; 
cout<<"准考证号以输入0结束!\n"; 
cout<<"***************************************\n"; 
cout<<"准考证号 "<<"姓名 "<<"学校 "<<"考试级别 "<<"选考语种"<<" "<<"成绩"<<endl; 

Student *pStu=new Student; 
cin>>pStu->testnum; 
while("0"!=pStu->testnum) 

cin>>pStu->name>>pStu->college>>pStu->grade>>pStu->language>>pStu->score; 
vStu.push_back(*pStu); 
cin>>pStu->testnum; 


cin.clear(); 
cin.sync(); 
cin.peek(); 
menu(); 


/********************************************/ 

void StuSys::delete_record() 

system("cls"); 
cin.clear(); 
cin.sync(); 
cout<<"请输入你想删除的学生的准考证号:\n"; 
cout<<"准考证号以输入0结束!\n"; 
cout<<"**************************************************************\n"; 

string tnum; 
cin>>tnum; 
vector<Student>::iterator vStuIte; 

while("0"!=tnum) 

fbFindByNum fbnbf(tnum); 
vStuIte=find_if(vStu.begin(),vStu.end(),fbnbf); 
if(vStu.end()==vStuIte) 

cout<<"没有找到该学生的相关信息,删除失败!\n"; 

else 

vStu.erase(vStuIte); 
cout<<"删除完成!\n"; 

cin>>tnum; 

cin.clear(); 
cin.sync(); 
cin.peek(); 
menu(); 


/********************************************/ 

void StuSys::select() 

system("cls"); 
cout<<"**********************\n"; 
cout<<"1.以考试证号.\n"; 
cout<<"2.以考生姓名.\n"; 
cout<<"3.退出.\n"; 
cout<<"**********************\n"; 

cin.clear(); 
cin.sync(); 
char choice=cin.get(); 
system("cls"); 

while('3'!=choice) 

if('1'==choice) 

system("cls"); 
cout<<"请输入您想查询的考生的准考证号:\n"; 
cout<<"准考证号以输入0结束!\n"; 
cout<<"**************************************************************\n"; 

string tnum; 
cin>>tnum; 
system("cls"); 
vector<Student>::iterator vStuIte=vStu.begin(); 

fbFindByNum fbnbf(tnum); 
vStuIte=find_if(vStuIte,vStu.end(),fbnbf); 

if(vStu.end()==vStuIte) 

cout<<"没有找到该考生相关信息,查询失败!\n"; 

else 

while(vStu.end()!=vStuIte) 

cout<<(*vStuIte).testnum<<"\t "<<(*vStuIte).name<<"\t "<<(*vStuIte).college<<"\t " 
<<(*vStuIte).grade<<"\t "<<(*vStuIte).language<<"\t "<<(*vStuIte).score<<endl; 
vStuIte=find_if(++vStuIte,vStu.end(),fbnbf); 



if('2'==choice) 

system("cls"); 
cout<<"请输入您想查询的考生姓名:\n"; 
cout<<"准考证号以输入0结束!\n"; 
cout<<"**************************************************************\n"; 

string tname; 
cin>>tname; 
system("cls"); 
vector<Student>::iterator vStuIte=vStu.begin(); 

fbFindByName fbnabf(tname); 
vStuIte=find_if(vStuIte,vStu.end(),fbnabf); 

if(vStu.end()==vStuIte) 

cout<<"没有找到该考生相关信息,查询失败!\n"; 

else 

while(vStu.end()!=vStuIte) 

cout<<(*vStuIte).testnum<<"\t "<<(*vStuIte).name<<"\t "<<(*vStuIte).college<<"\t " 
<<(*vStuIte).grade<<"\t "<<(*vStuIte).language<<"\t "<<(*vStuIte).score<<endl; 
vStuIte=find_if(++vStuIte,vStu.end(),fbnabf); 




cin.clear(); 
cin.sync(); 
cin.peek(); 
system("cls"); 
cout<<"**********************\n"; 
cout<<"1.以考试证号.\n"; 
cout<<"2.以姓名.\n"; 
cout<<"3.退出\n"; 
cout<<"**********************\n"; 
cin.clear(); 
cin.sync(); 
choice=cin.get(); 


cin.clear(); 
cin.sync(); 
cin.peek(); 
menu(); 


/********************************************/ 

void StuSys::modify() 


system("cls"); 
cin.clear(); 
cin.sync(); 
cout<<"请输入您想修改的考生的准考证号:\n"; 
cout<<"准考证号以输入0结束!\n"; 
cout<<"**************************************************************\n"; 

string tnum; 
vector<Student>::iterator vStuIte; 
cin>>tnum; 
system("cls"); 

fbFindByNum fbnbf(tnum); 
vStuIte=find_if(vStu.begin(),vStu.end(),fbnbf); 
if(vStu.end()==vStuIte) 

cout<<"没有找到该考生相关信息,修改失败!\n"; 

else 

cout<<"准考证号 "<<"姓名 "<<"学校 "<<"考试等级 "<<"选考语种 "<<"成绩 "<<endl; 
cout<<"***************************************\n"; 

Student *pStu=new Student; 
cin>>pStu->testnum>>pStu->name>>pStu->college>>pStu->grade>>pStu->language>>pStu->score; 
(*vStuIte)=*pStu; 
cout<<"修改完成!\n"; 


cin.clear(); 
cin.sync(); 
cin.peek(); 
menu(); 


/********************************************/ 


void StuSys::statistic() 

system("cls"); 
cout<<"**********************\n"; 
cout<<"1.以考试等级\n"; 
cout<<"2.以成绩\n"; 
cout<<"3.以选考语种\n"; 
cout<<"4.以学校\n"; 
cout<<"5.退出\n"; 
cout<<"**********************\n"; 

cin.clear(); 
cin.sync(); 
char choice=cin.get(); 

while('5'==choice) 

switch(choice) 

case '1': 
void grysyc(); break; 
case '2': 
; break; 
case '3': 
; break; 
case '4': 
; break; 
case '5': 
; break; 
default: 
statistic(); 


cin.clear(); 
cin.sync(); 
cin.peek(); 
menu(); 


/********************************************/ 

void StuSys::show() 

system("cls"); 
if(vStu.empty()) 

cout<<"数据为空!\n"; 

else 

for(int i=0;i<vStu.size();++i) 

cout<<vStu.at(i).testnum<<"\t "<<vStu.at(i).name<<"\t "<<vStu.at(i).college<<"\t " 
<<vStu.at(i).grade<<"\t "<<vStu.at(i).language<<"\t "<<vStu.at(i).score<<endl; 


cin.clear(); 
cin.sync(); 
cin.peek(); 
menu(); 


/********************************************/ 


int main() 

StuSys s; 
s.menu(); 
return 0; 
}

回复列表 (共1个回复)

沙发

QQ1285305730
详谈,帮你解决。

我来回复

您尚未登录,请登录后再回复。点此登录或注册