解题思路:
注意事项:
参考代码:
#include<bits/stdc++.h> using namespace std; typedef struct M{ string s; float h; }S; bool cmp(S a,S b){ if(a.s!=b.s) return a.s>b.s;//判断两个性别是否相等,如果不等就交换,因为m<f,所以此语句就会将两个性别不同的结构体往两个方向上靠。 else if(a.s==b.s&&a.s=="male") return a.h<b.h; else if(a.s==b.s&&b.s=="female") return a.h>b.h; } int main(){ S b[41]; int n; cin>>n; for(int i=0;i<n;i++) cin>>b[i].s>>b[i].h; sort(b,b+n,cmp); for(int i=0;i<n;i++) printf("%.2f ",b[i].h); return 0; }
0.0分
0 人评分
C语言程序设计教程(第三版)课后习题6.8 (C语言代码)浏览:723 |
点我有惊喜!你懂得!浏览:2754 |
C语言程序设计教程(第三版)课后习题10.2 (C语言代码)浏览:689 |
矩形面积交 (Java代码)浏览:1281 |
【绝对值排序】 (C++代码)浏览:720 |
c primer plus 第十二章 12.1小节浏览:400 |
简单的a+b (C语言代码)浏览:600 |
蛇行矩阵 (C语言代码)浏览:792 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:512 |
三角形 (C++代码)递归(存在大量重复计算,容易出现时间超限)浏览:836 |