#include <stdio.h>
int main()
{
int n;
scanf("%d",&n);
int a[10];
int i;
for(i=0;i<n;i++){
scanf("%d",&a[i]);
}
for(i=0;i<n-1;i++){//假设输入n为10,下述也以10来举例,i表示循环次数,也是数组下标,从a【0】到a【9】一共十次
int max = i;//假设最大值的数组下标为i,用max来存放i
for(int j=i+1;j<n;j++){//嵌套循环,外面循环一次,里面循环9次,从a【1】到 a【9】
if(a[max]<a[j]){//在第12行,你已经假设存放最大值的数组下标为i,也就是max,但是!!!你这个a【max】跟别人比较,if你比别人小,那么你就把a【max】这个位置交出来给别人
int temp;//下面三行就是进行交换位置
temp=a[max];
a[max]=a[j];
a[j]=temp;
}
}
}
for(i=0;i<n;i++){//当第8行的主循环进行一次, 这里也进行一次,输出a【max】的值
printf("%d ",a[i]);
}
return 0;
}
输入n个数,再输入n个整数,并且由大到小排列
最新推荐文章于 2024-04-29 23:56:08 发布