[問題] 亂數程式連續執行
遇到的問題: (題意請描述清楚)
我的亂數程式在連續執行時, 由於時間間隔很短,
srand() 傳入的參數一樣,而造成兩次得到的亂數值相同,
有人知道該如何將他打亂嗎?
update: 想到一個解法...加上 process pid
程式跑出來的錯誤結果:
>./a.out && ./a.out
i=1
i=2
i=6
i=3
i=2
---
i=1
i=2
i=6
i=3
i=2
---
開發平台: (例: VC++ or gcc/g++ or Dev-C++, Windows or Linux)
Freebsd
有問題的code: (請善用置底文標色功能)
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
void f()
{
int iSecret;
iSecret = rand() % 10 + 1;
printf("i=%d\n",iSecret);
}
int main ()
{
int iSecret;[A
srand (time(NULL) );
int k=0;
for(k=0;k<5;k++){
f();
}
printf("---\n");
return 0;
}
補充說明:
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.113.235.102
推
02/07 03:02, , 1F
02/07 03:02, 1F
→
02/07 03:02, , 2F
02/07 03:02, 2F
推
02/07 03:13, , 3F
02/07 03:13, 3F
→
02/07 03:17, , 4F
02/07 03:17, 4F
→
02/07 03:17, , 5F
02/07 03:17, 5F
推
02/07 06:48, , 6F
02/07 06:48, 6F
→
02/07 06:49, , 7F
02/07 06:49, 7F
討論串 (同標題文章)