作者insperation@kkcity.com.tw (), 信區: sources
標題求救selection的問題
時間KKCITY (Fri Dec 31 11:59:08 2004)
轉信站: GIBBS!news2.ncku!ccnews.ncku!news.ccns.ncku!news.mksh.phc!news.nsysu!ne
Origin: bbs.kkcity.com.tw
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int SSS(int L[])
{
int curr=0,smallest,data,walker,i,last=5;
srand(time(NULL));
for(i=0;i<5;i++)
{
data = rand();
L[i] = data;
printf("[%d] is %d\n",i,L[i]);
}
while (curr < last)
{
smallest = curr;
walker = curr+1;
while (walker <= last)
{
if( L[walker] < L[smallest] )
{
smallest = walker;
}
walker = walker + 1;
}
data = L[curr];
L[curr] = L[smallest];
L[smallest] = data;
curr = curr+1;
printf("[%d] is %d\n",curr,data);
/*printf("takes is %d\n",takes);*/
}
}
int main()
{
int L[5];
clrscr();
SSS(L);
system("pause");
}
上面是我的程式碼...我的問題是
有時候成是再run十數值沒做到對換的動作
還有資料被覆蓋掉的情況
EX:
排好序因該是
10,36,42,75,185...這時候跑出來的桔果
有時候其中有幾個數字會被其他數值覆蓋掉
請指教...
--
┌─────◆KKCITY◆─────┐ ◢ ◤ ★ 線上音樂新震撼 ★ ◢ ◤
│ bbs.kkcity.com.tw │ ^_^ / 隨選隨播免等待 KKBOX◤ ^_^ /
└──《From:61.220.247.41 》──┘ ◤ http://www.kkbox.com.tw ◤