解题思路:
注意事项:
参考代码:
#include<iostream> #include<algorithm> using namespace std; struct node{ int x; }a[1001],b[1001],c[1001],d[1001],e[1001];//分别代表5个等级 int n; int a1,b1,c1,d1,e1;//用来统计出现次数 int cmp1(node a,node b)//结构体排序一波 { return a.x>b.x; } int main() { node st; cin>>n; for(int i=1;i<=n;i++) { int l; cin>>l; if(l>=90) { ++a1; a[a1].x=l; } else if(l>=80) { ++b1; b[b1].x=l; }else if(l>=70) { ++c1; c[c1].x=l; }else if(l>=60) { ++d1; d[d1].x=l; }else { ++e1; e[e1].x=l; } } cout<<a1<<" "<<b1<<" "<<c1<<" "<<d1<<" "<<e1<<" \n"; int maxl=a1,l=1;//比较出最多的数的编号 if(maxl<b1) maxl=b1,l=2; if(maxl<c1) maxl=c1,l=3; if(maxl<d1) maxl=d1,l=4; if(maxl<e1) maxl=e1,l=5; cout<<maxl<<endl; switch(l)//无脑复制一波 { case 1: sort(a+1,a+1+a1,cmp1); for(int i=1;i<=a1;i++) cout<<a[i].x<<" "; break; case 2: sort(b+1,b+1+b1,cmp1); for(int i=1;i<=b1;i++) cout<<b[i].x<<" "; break; case 3: sort(c+1,c+1+c1,cmp1); for(int i=1;i<=c1;i++) cout<<c[i].x<<" "; break; case 4: sort(d+1,d+1+d1,cmp1); for(int i=1;i<=d1;i++) cout<<d[i].x<<" "; break; case 5: sort(e+1,e+1+e1,cmp1); for(int i=1;i<=e1;i++) cout<<e[i].x<<" "; break; } return 0; }
0.0分
0 人评分
C二级辅导-分段函数 (C语言代码)浏览:583 |
C语言程序设计教程(第三版)课后习题6.9 (C语言代码)浏览:524 |
兰顿蚂蚁 (C++代码)浏览:1225 |
C语言训练-求PI* (C语言代码)浏览:637 |
C语言程序设计教程(第三版)课后习题5.7 (C语言代码)浏览:606 |
K-进制数 (C语言描述,蓝桥杯)浏览:955 |
数字游戏 (C++代码)浏览:1240 |
C二级辅导-统计字符 (C语言代码)浏览:514 |
整数平均值 (C语言代码)浏览:856 |
C语言程序设计教程(第三版)课后习题6.1 (C语言代码)浏览:532 |