中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

c語言怎么讓隨機數不重復

小億
446
2023-12-05 01:07:15
欄目: 編程語言

在C語言中,可以使用隨機數生成函數和數組的方式來實現隨機數不重復的功能。具體步驟如下:

  1. 使用srand函數設置隨機數的種子,可以使用當前時間作為種子,確保每次運行程序時種子值不同。

  2. 聲明一個數組,用于存儲已生成的隨機數。

  3. 使用循環生成隨機數,并判斷該隨機數是否已存在于數組中,若不存在則將其添加到數組中,否則重新生成隨機數。

  4. 重復步驟3,直到生成足夠數量的不重復隨機數。

下面是一個示例代碼:

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

#define MAX_NUM 10   // 生成的隨機數個數
#define MAX_RANGE 100   // 隨機數的范圍

int main() {
    int random_nums[MAX_NUM];   // 用于存儲隨機數的數組
    int i, j, num;

    srand((unsigned) time(NULL));   // 設置隨機數種子為當前時間

    for (i = 0; i < MAX_NUM; i++) {
        do {
            num = rand() % MAX_RANGE + 1;   // 生成隨機數
            for (j = 0; j < i; j++) {
                if (num == random_nums[j]) {
                    break;   // 若隨機數已存在于數組中,則重新生成
                }
            }
        } while (j < i);

        random_nums[i] = num;   // 添加隨機數到數組中
    }

    // 打印生成的隨機數
    for (i = 0; i < MAX_NUM; i++) {
        printf("%d ", random_nums[i]);
    }

    return 0;
}

運行上述代碼,即可生成指定個數(MAX_NUM)的不重復隨機數,并打印輸出。

0
龙泉市| 新绛县| 东港市| 济源市| 什邡市| 新余市| 屏东市| 晋宁县| 安吉县| 聂荣县| 延庆县| 监利县| 精河县| 河池市| 德昌县| 吴旗县| 邳州市| 浏阳市| 黔江区| 乌兰县| 旅游| 寿宁县| 平邑县| 手游| 德令哈市| 东阳市| 大港区| 朝阳区| 楚雄市| 军事| 涞水县| 城步| 金塔县| 新蔡县| 沈阳市| 江油市| 东宁县| 台江县| 抚州市| 边坝县| 本溪|