首页 > 代码库 > 扔骰子问题的两种方法
扔骰子问题的两种方法
关于扔骰子的两个方法,刚和一个同学聊起来了,
我就做出来了两个方法,都是很简单的!
在这记录一下,
第一种方法,每次都输入一次:
#include <stdio.h>
#define N 5
int main() {
//定义一个变量来存放骰子数
int num;
//定义出现的数字变量
int count_1=0, count_2=0, count_3=0, count_4=0, count_5=0, count_6=0;
for (int i=1; i<=N; i++) {
printf("请输入第%d次扔骰子出现的数字:\n",i);
scanf("%d",&num);
if (num==1) {
count_1++;
}else if (num==2){
count_2++;
}else if(num==3){
count_3++;
}else if(num==4){
count_4++;
}else if(num==5){
count_5++;
}else if(num==6){
count_6++;
}//此处因为自己一次一次输入的,所以不需要判断不是1-6之外的了,
}
printf("1出现的次数为%d\n2出现的次数为%d\n3出现的次数为%d\n4出现的次数为%d\n5出现的次数为%d\n6出现的次数为%d\n",count_1,count_2,count_3,count_4,count_5,count_6);
return 0;
}
第二种方法,用随机数:
#include <stdio.h>
#include <stdlib.h>
#define N 100
int main() {
int count_1=0, count_2=0, count_3=0, count_4=0, count_5=0, count_6=0;
for (int i=1; i<=N; i++) {
int num= arc4random_uniform(6)+1; //(N)随机出来的是0~N-1,
if (num==1) {
count_1++;
}else if (num==2){
count_2++;
}else if(num==3){
count_3++;
}else if(num==4){
count_4++;
}else if(num==5){
count_5++;
}else if(num==6){
count_6++;
}else{
i--;
continue;
}
}
printf("1出现的次数为%d\n2出现的次数为%d\n3出现的次数为%d\n4出现的次数为%d\n5出现的次数为%d\n6出现的次数为%d\n",count_1,count_2,count_3,count_4,count_5,count_6);
return 0;
}
扔骰子问题的两种方法