由于一些未知的原因,用中文姓名排序有些问题,代码被注释掉了
#include<iostream>
#include<string>
#include<fstream>
using namespace std;
const int num=100;
int main()
{
string name[num];
double score[num];
ifstream fin("score",ios::in);
if(!fin)
{
cerr<<"Open error!";
return 1;
}
int input=0;
string ts;
while(fin>>ts)
{
name[input]=ts;
fin>>score[input];
input++;
}
int i,j;
double t;
string temp;
/
cout<<"sort by score:\n"<<endl;
for(i=0;i<input;i++)
{
for(j=0;j<input-i-1;j++)
{
if(j<input-1)
{
if(score[j]<score[j+1])
{
t=score[j];
temp=name[j];
score[j]=score[j+1];
name[j]=name[j+1];
score[j+1]=t;
name[j+1]=temp;
}
}
}
}
for(int o=0;o<input;o++)
{
cout<<name[o]<<'\t'<<score[o]<<endl;
}
cout<<endl;
/* /
cout<<"sort by name:\n"<<endl;
for(i=0;i<input;i++)
{
for(j=0;j<input-i-1;j++)
{
if(j<input-1)
{
if(name[j]>name[j+1])
{
t=score[j];
temp=name[j];
score[j]=score[j+1];
name[j]=name[j+1];
score[j+1]=t;
name[j+1]=temp;
}
}
}
}
for(int o=0;o<input;o++)
{
cout<<name[o]<<'\t'<<score[o]<<endl;
}
*/
fin.close();
return 0;
}