溫馨提示×

c語言隨機生成如何避免重復

小樊
126
2024-08-05 11:21:12
欄目: 編程語言

在C語言中,可以通過使用數組來存儲已經生成的隨機數,然后在生成隨機數時檢查新生成的隨機數是否已經存在于數組中,如果存在則重新生成隨機數,直到生成的隨機數不重復為止。

以下是一個示例代碼:

#include <stdio.h>
#include <stdlib.h>
#include <time.h>

#define MAX_NUM 10

int main() {
    int random_nums[MAX_NUM];
    int num_generated = 0;

    srand(time(NULL));

    while (num_generated < MAX_NUM) {
        int random_num = rand() % 100 + 1;
        int is_duplicate = 0;

        for (int i = 0; i < num_generated; i++) {
            if (random_num == random_nums[i]) {
                is_duplicate = 1;
                break;
            }
        }

        if (!is_duplicate) {
            random_nums[num_generated] = random_num;
            num_generated++;
        }
    }

    printf("Generated random numbers:\n");
    for (int i = 0; i < MAX_NUM; i++) {
        printf("%d\n", random_nums[i]);
    }

    return 0;
}

在這個示例代碼中,我們使用一個數組random_nums來存儲已經生成的隨機數,然后在每次生成隨機數時循環檢查新生成的隨機數是否已經存在于數組中。如果存在則重復生成,直到生成的隨機數不重復為止。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女