求教数组排序 每排一次输出一次 不知哪里出错了
#include <stdio.h>#define SIZE 10
void main()
{ int a[SIZE]={2,4,6,8,10,12,89,68,45,37};
int i, j, k, numberofcomp = 0 , temp; /*numberofcomp存放两两比较的次数,temp用做交换的临时变量*/
printf("data items in original order\n");
for(i=0 ; i<SIZE; i++)
printf("%4d", a[i]);
printf("\n");
/*补充程序,完成冒泡算法,输出格式参见上面(1)部分的输出结果*/
for(i=0;i<9;i++)
{for(j=0;j<9;j++)
{if(a[j]>a[j+1])
temp=a[j];a[j]=a[j+1];a[j+1]=temp;}
printf("after pass %d :",i);
for(k=0;k<=9;k++)
printf(" %d",a[k]);
printf("\n");
}
printf("\n data items in ascending order\n");
for(i=0 ; i<SIZE ; ++i)
printf("%4d", a[i]);
printf("\n number of comparisons = %d\n", numberofcomp);
}