【请教】这个冒泡排序程序有些问题
#include <stdio.h>/*未调试完毕*/
#define True 1
#define False 0
#define N 11
main()
{int i,j,NoSwap;
int r[]={0,9,8,7,6,5,4,3,2,1};
for(i=1;i<N-1;i++)
{NoSwap=True;
for(j=N-1;j>1;j--)
{if(r[j+1]<r[j])
{r[0]=r[j+1];r[j+1]=r[j];r[j]=r[0];
NoSwap=False;}
}
}
for(i=1;i<N-1;i++)
printf("%d ",r[i]);
scanf("%*d");
}
不知道为什么第一个总是最大
第二个开始才是递减的
请教
谢谢!