问题标题: 酷町堂:求解

0
0
已解决
万韧山
万韧山
初级天翼
初级天翼
#include<bits/stdc++.h>
using namespace std;
double x[500],p[500];
int cnt,ans;
struct node
{
    string s;
    double k;
}a[500]; 
bool cmp1(node x,node y)
{
    return x.k>y.k;
}
bool cmp2(node l,node w)
{
    return l.k<w.k;
}
int main(){
    int n;
    cin>>n;
    for(int i=1;i<=n;i++)
    {
        cin>>a[i].s>>a[i].k;
        if(a[i].s=="male"){
            x[++cnt]=a[i].k;
        }else{
            p[++ans]=a[i].k;
        }
    }
    sort(x+1,x+cnt+1,cmp2);
    sort(p+1,p+ans+1,cmp1);
    for(int i=1;i<=cnt;i++){
        printf("%.2f ",x[i]);
    }
    for(int i=1;i<=ans;i++){
        printf("%.2f ",p[i]);
    }
    return 0;
}

这个代码为什么编译错误啊


0
已采纳
薛乘志
薛乘志
初级启示者
初级启示者

先看看x和p数组是什么类型,再看看cmp的参数是什么类型

0
我要回答