You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在C++中创建含10个随机1的9×9零矩阵

在C/C++中创建含10个随机1的9×9矩阵

要实现需求,核心思路是先初始化一个全0的9×9矩阵,然后随机挑选10个不重复的位置将值设为1,最后按格式输出矩阵。以下是具体实现代码:

#include <iostream>
#include <cstdlib>
#include <ctime>

int main() {
    // 初始化9×9全0矩阵
    int matrix[9][9] = {0};
    int count = 0;

    // 设置随机数种子,确保每次运行结果不同
    srand(time(nullptr));

    // 生成10个不重复的随机位置并设为1
    while (count < 10) {
        int row = rand() % 9;
        int col = rand() % 9;
        if (matrix[row][col] == 0) {
            matrix[row][col] = 1;
            count++;
        }
    }

    // 按格式输出矩阵
    std::cout << "array[" << std::endl;
    for (int i = 0; i < 9; i++) {
        std::cout << "      [ ";
        for (int j = 0; j < 9; j++) {
            std::cout << matrix[i][j] << ", ";
        }
        std::cout << "]" << std::endl;
    }
    std::cout << "]" << std::endl;

    return 0;
}

关键说明:

  • 矩阵初始化:int matrix[9][9] = {0};可快速将所有元素初始化为0。
  • 随机数种子:srand(time(nullptr))以当前时间为种子,避免每次运行生成相同的随机序列。
  • 去重逻辑:每次生成随机行列后检查位置是否为0,仅未被设置过的位置才会设为1,确保10个1的位置不重复。
  • 输出格式:循环遍历矩阵,按示例格式打印每行内容,保持视觉一致性。

内容的提问来源于stack exchange,提问作者Kokojambik

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.17 11:32:41