题目要求:随机输入十个数,按从大到小排序输出
#include<stdio.h>
int main(void)
{
int i, j, med;
int a[10];
for (i = 0; i < 10; i++)
{
scanf("%d", &a[i]);
}
putchar('\n');
for (j = 0; j < 9; j++)
{
for (i = 0; i < 9 - j; i++)//因为经过比较以后最大的数已经排到了第一个,所以往后每次循环都不需要去比较它,所以说i < 9 - j。
{
if (a[i] > a[i + 1])
{
med = a[i];
a[i] = a[i + 1];
a[i + 1] = med;
}
}
}
printf("The number from big to small:\n");
for (i = 0; i < 10; i++)
{
printf("%d ", a[i]);
}
putchar('\n');
return 0;
}
先使用一个for循环将10个数赋值到a[i],再使用两个嵌套for循环,最后使用一个循环将10个数从大到小输出。