回覆列表
-
1 # 跳舞的山羊
-
2 # 使用者8108804039310
1 C語言產生隨機數函式。rand(); 標頭檔案為stdlib.h
2 產生[m,n]範圍內隨機數的語句: rand()%(n-m+1)+m
3 要產生不同隨機數範圍的方法:
將已獲取的隨機數儲存下來,在產生新的隨機數後,與已獲取到的進行比較,如果存在則拋棄,否則儲存。
於是,獲取到最小為m,最大為n,總數為k個的不同隨機數的函式可以寫作:
void get_rand(int *a, int m, int n, int k)//結果存在a中
{
int i,j,t;
for(i = 0; i
{
t = rand()%(n-m+1)+m;
for(j = 0; j
if(a[j] == t) break;
if(j == i)//不重複
a[i++] = t;//記錄隨機數。
}
}
你應該會看字,會模仿吧,把m,n改成你需要的具體數字就可以了
1 C語言產生隨機數函式。rand(); 標頭檔案為stdlib.h2 產生[m,n]範圍內隨機數的語句: rand()%(n-m+1)+m3 要產生不同隨機數範圍的方法:將已獲取的隨機數儲存下來,在產生新的隨機數後,與已獲取到的進行比較,如果存在則拋棄,否則儲存。於是,獲取到最小為m,最大為n,總數為k個的不同隨機數的函式可以寫作:void get_rand(int *a, int m, int n, int k)//結果存在a中{int i,j,t;for(i = 0; i < k; ){t = rand()%(n-m+1)+m;for(j = 0; j < i; j ++)if(a[j] == t) break;if(j == i)//不重複a[i++] = t;//記錄隨機數。}}你應該會看字,會模仿吧,把m,n改成你需要的具體數字就可以了