马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
/*
程序用途:
设有10个学生的考试成绩,分数为0-10分,请输入每个学生的成绩,并把成绩按从高到低的顺序排序。
使用算法:
桶排序。
*/
#include <stdio.h>
#include <stdlib.h>
#define STUDENTSNUM 10
int main(void)
{
int students[10];
int scores[11] = {0,0,0,0,0,0,0,0,0,0,0};
int i,j, score;
printf("请依次输入10个学生的成绩(最低分数为0分,最高分数为10分):");
for (i = 0; i < STUDENTSNUM; i++)
{
scanf("%d", &score);
if (score>10 || score < 0)
{
printf("成绩输入错误,请重新输入");
if (i>0)
i--;
}
else
{
students[i] = score;
}
}
for (i = 0; i<STUDENTSNUM;i++)
{
j = students[i];
scores[j]++;
}
printf("\n排序后的结果:\n")
for (i = 10; i >0;i--)
{
for (j = 1; j <= scores[i]; j++)
{
printf("%d ", i);
}
}
system("PAUSE");
return 0;
}
|