C练习——模拟投掷6000次骰子

发布时间:2024年01月15日

题目:

模拟骰子投6000次,并计算每一面出现的概率

解析:

6000次,首先想到用数组记录六个面各出现次数

其次,使用随机数(1~6的数)模拟骰子

然后统计1~6每个数出现的几次,最后除以6000,输出即可

逻辑:

先循环随机数模拟投掷,将结果记录于数组

再循环遍历数组计算概率

参考代码:

// 模拟骰子投6000次,并计算每一面出现的概率

#include <stdio.h>
#include <time.h>
int main()
{
	int arr[6] = { 0 };
	int start = 1;
	int end = 6000;
	int face = 0;
	srand((unsigned int)time(NULL));

	for (start = 1; start <= end; start++) // 模拟掷骰子6000次
	{
		face = rand() % 6 + 1;
		arr[face - 1] += 1; // 统计六面出现次数
	}
	int i = 0;
	double frequency = 0;
	for (i = 0; i < 6; i++)
	{
		frequency = arr[i] / 6000.0000 * 100;
		printf("点数%d出现概率:%.2f%%\n",i+1,frequency);
	}
	return 0;
}

运行结果:

文章来源:https://blog.csdn.net/2301_76271519/article/details/135596052
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。