主要问题:名字要随成绩变化,要定义成string;
for(j=0;j<99;j++)
@@@@@@@@@
#include <iostream>
#include <fstream>
#include <string>
#include <iomanip>
using namespace std;
int main ()
{
int a[100],i,j,m;
string name[100],n;
ifstream infile("成绩单表.txt",ios::in);
if(!infile)
{
cerr << " open error ! " <<endl;
exit (1);
}
for (i=0;i<100;i++)
infile >> name[i] >>a[i];
infile.close();
for(j=0;j<99;j++)
{
for(i=0;i<99-j;i++)
{
if(a[i]<a[i+1])
{
m=a[i];
n=name[i];
a[i]=a[i+1];
name[i]=name[i+1];
a[i+1]=m;
name[i+1]=n;
} }
}
for(i=0;i<100;i++)
{
if(i%5==0)
cout<<endl;
cout<<name[i]<<":"<<setw(5)<<a[i]<<'\t';
}
cout<<endl;
return 0;
}