在 C 中生成範圍內隨機數
我們將介紹如何使用 C 生成範圍內隨機數。要解決此問題,我們將使用 `srand()` 函式。當前時間將用於設定 `srad()` 函式種子。
此函式無法在任何範圍內生成隨機數,它可以在 0 到某個值之間生成數。因此,對於此類函式,我們必須遵循一個技巧。我們將在 0 到 (上限 - 下限 + 1) 之間生成隨機數,然後新增下限以進行偏移。
示例
#include <stdio.h> #include <stdlib.h> #include <time.h> void generate_random(int l, int r, int count) { //this will generate random number in range l and r int i; for (i = 0; i < count; i++) { int rand_num = (rand() % (r - l + 1)) + l; printf("%d ", rand_num); } } main() { int lower = 10, upper = 15, count = 15; srand(time(0)); //current time as seed of random number generator generate_random(lower, upper, count); printf("\n"); }
輸出
15 11 13 10 13 10 15 11 14 12 12 13 12 13 14
廣告