作者idea1825 (小貝殼)
看板TransCSI
標題[問題] 請大家幫我看一下程式...
時間Mon May 21 19:07:32 2007
有關10個亂碼排列要由大排到小
程式是醬的!(如下)
/*program: */
#include<stdio.h>
#include<stdlib.h>
#include<conio.h>
#define MAX(a,b)((a>=(b) ? (a) : (b))
int main()
{
int i,x[10],k,a,b=9;
int sum,sum1;
for(i=0;i<10;i++)
{a=rand();
x[i]=(int)
printf("x[%i]=",i,x[i]);
printf("%i \n",a);
}
while(b!=0)
{sum=0;
for(i=0;i<=b-1;i++)
{if (x[i]>x[i+1])
{sum1=x[i];x[i]=x[i+1];x[i+1]=sum1;
sum=i;
}
}
b=sum;
}
for(i=0;i<10;i++)
printf("%d ",x[i]);
system("pause");
return(0);
}
請問大家為什麼我這個程式秀到x[9]=24464後之後他的下一行會是5 5 5 5 5 5 5 5 5 5
這樣啊!!請問我應該怎嚜改呢?(我用的是DevC++!)
要如何讓這個程式正確的由大排到小?
※ 編輯: idea1825 來自: 140.127.186.4 (05/21 19:09)
1F:推 lccf:我覺得你可以先寫一下註解 這樣大家比較了解你解題邏輯 05/22 20:40