#include <stdio.h>
#include <conio.h>
int main(int argc, char* argv[])
{
int num[6] = {83,34,45,12,56,87};
int j;
puts("排序前数组中数据的顺序:");
for(j=0;j<=5;j++)
printf("%d ",num[j]);
printf("\n");
int temp;
for(int i=1;i<=5;i++)
{
int pos = 0;
for(int j=1;j<=6-i;j++)
{
if(num[pos]<num[j])
pos = j;
}
if(pos != 7-i)
{
printf("%d,%d^^^\n",num[pos],pos);
temp = num[7-i-1];
num[7-i-1] = num[pos];
num[pos] = temp;
}
}
puts("排序后数组中数据的顺序:");
for(j=0;j<=5;j++)
printf("%d ",num[j]);
printf("\n\n");
getch();
return 0;
}
问了好多人,都不能解释7-i+1,最后决定应该是7-i。