#include<stdio.h>
int main()
{ int n,i,j;
int a[10],t;
printf("请选择输入多少个数\n");
scanf("%d",&n);
printf("输入的个数为%d\n",n);
for(i=0;i<n;i++)
scanf("%d",&a[i]);
for(i=0;i<n ;i++)
{ for(j=0;j<j-i;j++)
if(a[j]>a[j+1])
{t=a[j];
a[j]=a[j+1];
a[j+1]=t;}
}
printf("从小到大顺序:\n");
for(i=0;i<n;i++)
{ printf("%d",a[i]);printf("\n");}
return 0;
}
排序算法的内部循环控制条件不对:i>=0时,j<j-i永远不成立,里面根本没跑。应该改为j<n-i-1。
你这个j-i秀到我了
外层循环运行一次,内层循环循环一周