acm排序问题
这是做到现在的部分代码 但无法运行 想知道如何可以使自定义结构的数组 可以按num来从小到大排序 谢谢#include"stdafx.h"
#include<iostream>
#include<string>
#include<algorithm>
using namespace std;
struct point{
string num;
string name;
int sco;
};
bool cmp1(const point&s1,const point&s2)
{
if(s1.num>s2.num)
return 1;
else
return 0;
}
int main()
{
for(int j,jj=0;cin>>j>>jj&&(j+jj)!=0;)
{
point all[100000]={0};
string s,mm;
int y,n=0;
for(;n<j;n++)
{
cin>>s>>mm>>y;
all[n].num=s;
all[n].name=mm;
all[n].sco=y;
}
if(jj==1)
{
sort(all[0],all[j], cmp1);
cout<<"Case 1:"<<'\n';
for(int p=0;p<j;p++)
{
cout<<all[p].num<<' '<<all[p].name<<' '<<all[p].sco<<'\n';
}
}
//if(jj==2)
//{}
//if(jj==3)
//{}
}
}
[解决办法]
struct point{
string num;
string name;
int sco;
};
注意下这个,应该不能用string类型做比较的~可能会导致结果的不确定性~
[解决办法]
把报错拿上来研究一下嘛