关于这个骰子问题不知道那里错了

问题是统计10面骰子个点出现次数
问下各位我这个思路应该没问题吧但为啥出错了

img

你这个j没变呀,死循环了吧,最后给它j++一下

for (int j = 1; j <= 10; j++) {  
        cout << arr[j] << endl;
    }

img

  • 帮你找了个相似的问题, 你可以看下: https://ask.csdn.net/questions/7537582
  • 我还给你找了一篇非常好的博客,你可以看看是否有帮助,链接:从键盘输入10个整数,编程实现将其中最大数与最小数的位置对换后,再输出调整后的数组
  • 除此之外, 这篇博客: 【校招面经】这10道指针面试真题,快来检测自己掌握了几道。中的 知识点补充 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
  • 指针类型决定了指针向前或向后走一步的步长(±整数),单位是字节。详情请看我原先的一篇文章:指针初阶详解

  • 您还可以看一下 张飞老师的硬件开发与电路设计速成入门到精通视频教程第一部课程中的 稳压线性电源工作原理分析小节, 巩固相关知识点
  • 以下回答由chatgpt基于相关博客总结生成:

    对于统计10面骰子每个点出现的次数,可以使用一个长度为10的整型数组来存储每个点出现的次数,具体代码如下:

    #include <iostream>
    #include <cstdlib>
    #include <ctime>
    using namespace std;
    
    int main() {
        srand(time(NULL)); // 以当前时间为种子,初始化随机数生成器
        const int N = 100000; // 投骰子的总次数
        int cnt[10] = {0}; // 统计每个点出现的次数,初始化为0
        for (int i = 0; i < N; i++) {
            int num = rand() % 10 + 1; // 随机生成1-10之间的整数
            cnt[num-1]++; // 统计每个点出现的次数
        }
        for (int i = 0; i < 10; i++) {
            cout << i+1 << "出现的次数为:" << cnt[i] << endl;
        }
        return 0;
    }
    

    在这段代码中,我们使用了rand()随机数生成器来模拟投10面骰子的情况,每次生成的随机数即为骰子点数。我们通过长度为10的整型数组cnt来统计每个点出现的次数,其中数组下标从0-9对应骰子点数1-10,每次生成一个骰子点数,就将对应数组元素的值加1。最后输出每个点出现的次数即可。