[求助]我的程序哪儿出错了,情指点。
#include<stdio.h>
main() { int a[31]; int i,j,temp; for(i=1;i<31;i++) { a[i]=rand(); printf("%d ",a[i]); if(i%10==0) printf("\n"); } for(j=1;j<=29;j++) { for(i=1;i<=30-j;i++) if(a[i]>a[i+1]) { temp=a[i]; a[i]=a[i+1]; a[i+1]=temp; } printf("\n"); for(i=1;i<=30;i++) /* 输出每次冒泡排序后的数组 */ { printf("%d ",a[i]); if(i%10==0) printf("\n"); } } printf("\n"); printf("The sorted number is:\n"); for(i=1;i<=30;i++) { printf("%d ",a[i]); if(i%10==0) printf("\n"); } getch(); }
要求用起泡排序法,并输出每趟起泡后数组序列,即输出排序过程和结果。我运行的时候,输出的数组序列都是一样,没有变化。请帮忙看一下,谢谢。