解题思路:
注意事项:
参考代码:
#include<stdio.h>
void px(int a[],int x)
{
int i,j,max,t;
for(i=0;i<x;i++)
{
max=i;
for(j=i;j<x;j++)
if(a[j]>a[max])
max=j;
t=a[max];a[max]=a[i];a[i]=t;
}
}
int main()
{
int a[1000],b[6]={0},m[6]={0},p[6][1000],n,k,i;
scanf("%d",&n);
for(i=0;i<n;i++)
{
scanf("%d",&a[i]);
if(0<=a[i]&&a[i]<=59)
{
b[1]=b[1]+1;
p[1][m[1]++]=a[i];
}
else if(60<=a[i]&&a[i]<=69)
{
b[2]=b[2]+1;
p[2][m[2]++]=a[i];
}
else if(70<=a[i]&&a[i]<=79)
{
b[3]=b[3]+1;
p[3][m[3]++]=a[i];
}
else if(a[i]>=80&&a[i]<=89)
{
b[4]=b[4]+1;
p[4][m[4]]=a[i];
m[4]++;
}
else if(90<=a[i]&&a[i]<=100)
{
b[5]=b[5]+1;
p[5][m[5]++]=a[i];
}
else
{
return 0;
}
}
k=1;
for(i=1;i<=5;i++)
{
if(b[k]<b[i])
{
k=i;
continue;
}
}
printf("%d %d %d %d %d\n",b[5],b[4],b[3],b[2],b[1]);
printf("%d\n",b[k]);
px(p[k],b[k]);//对等级最多的位置进行排序
for(i=0;i<b[k];i++)//输出
{
printf("%d ",p[k][i]);
}
return 0;
}
0.0分
0 人评分
程序员的表白 (C语言代码)浏览:1576 |
C语言程序设计教程(第三版)课后习题11.8 (C语言代码)浏览:640 |
简单的a+b (C语言代码)浏览:564 |
字符逆序 (C语言代码)浏览:706 |
Cylinder (C语言描述+详细分析)浏览:3375 |
C语言程序设计教程(第三版)课后习题10.3 (C语言代码)浏览:523 |
C语言程序设计教程(第三版)课后习题10.5 (C语言代码)浏览:586 |
求圆的面积 (C语言代码)浏览:714 |
陶陶摘苹果2 (C++代码)浏览:578 |
三角形 (C语言代码)浏览:722 |