📄 main.cpp
字号:
#include <iostream>
#include <vector>
#include "student.h"
void inputStudentInfo(std::vector<CStudent>& vec);
int findStudent(std::vector<CStudent>& vec ,
std::vector<CStudent>::iterator& it ,
std::string str);
void InsertSort(std::vector<CStudent>& vec);
int main()
{
std::vector<CStudent> classes1;
std::vector<CStudent>::iterator iter ;
inputStudentInfo(classes1);
std::cout<<"Enter the name you want to check : " <<std::endl;
char a[20];
std::cin>>a;
if(findStudent(classes1,iter,a))
{
std::cout<<iter->returnName()<<" performance : \n"
<<"Chinese : "<<iter->returnChinese()
<<"\nMath : "<<iter->returnMath()
<<"\nEnglish : "<<iter->returnEnglish()<<std::endl;
}
else
{
std::cout<<"No found!\n";
}
InsertSort(classes1);
int i ;
std::cout<<"All students' performance descend by total performance :\n" ;
for( iter = classes1.begin() , i = 1 ; iter != classes1.end() ; iter++ , i++ )
{
std::cout<<"The rank "<<i<<" is : "<<std::endl;
std::cout<<iter->returnName()<<std::endl;
std::cout<<iter->returnTotalPreformance()<<std::endl;
}
std::cin.get();
std::cin.get();
return 0 ;
}
void inputStudentInfo(std::vector<CStudent>& vec)
{
int a=1;
CStudent temp;
double b ;
char c[20];
std::cout<<"Enter number 1 for input students' information: \nnumber 0 for end of input : \n" ;
while(a)
{
std::cin>>a;
if(a == 1)
{
std::cout<<"Input student's name : \n";
std::cin>>c;
temp.SetName(c);
std::cout<<"Input chinese : \n ";
std::cin>>b;
temp.SetChinese(b);
std::cout<<"Input math : \n ";
std::cin>>b;
temp.SetMath(b);
std::cout<<"Input english : \n ";
std::cin>>b;
temp.SetEnglish(b);
vec.push_back(temp);
}
else continue;
std::cout<<"Enter number 1 for input students' information: \nnumber 0 for end of input : \n" ;
}
}
int findStudent(std::vector<CStudent>& vec ,
std::vector<CStudent>::iterator& it ,
std::string str)
{
for( it=vec.begin() ; it != vec.end() ; it++ )
{
if(str == (*it).returnName())
{
return 1 ;
break ;
}
}
it = NULL ;
return 0 ;
}
void InsertSort(std::vector<CStudent>& vec)
{
CStudent temp ;
for( int i = 1 ; i <= vec.size() ; i++ )
{
if(vec[i].returnTotalPreformance()<vec[i-1].returnTotalPreformance())
{
temp = vec[i];
for( int j = i-1 ;
temp.returnTotalPreformance() < vec[j].returnTotalPreformance() ;
--j )
{
vec[j+1] = vec[i] ;
}
vec[j+1] = temp ;
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -