冒泡法,不知道哪里错了,请帮忙指出,谢谢了
程序代码:
#include "stdio.h"
int main()
{
int i,j,a[10],temp;
printf("input 10 numbers:\n");
for (i=0;i<10 ;i++ )
{
scanf("%d",&a[i]);
}
for (j=0; j<10;j++)
{
for (i=0;i<10-j ;i++ )
{
if (a[i]>a[i+1])
{
temp=a[i];
a[i]=a[i+1];
a[i+1]=temp;
}
}
}
printf("paixu hou :\n");
for (i=0;i<10 ;i++ )
{
printf("%-5d",a[i]);
}
return 0;
}程序如上,
问题是,排序后,a[i]总是为-1,并且最大数没有了?
学到数组,对这个程序也不太明白,看了几遍,然后不看书写的,结果却错了;对照书,也没找到个所以然来
所以请大家帮忙看看,谢谢了
[ 本帖最后由 神奇的地球 于 2010-7-22 12:33 编辑 ]







