作者在 2009-07-10 06:54:16 发布以下内容
// 模拟摸球 500 回,每回 3 次,摸到 1、3、5、7 为白球, 2、4、6、8 为红球
#include<stdio.h>
#include<time.h>
#define N 500.0
int main(void)
{
int ball[3];
int ball_white;
int ball_red;
int i;
ball_white=ball_red=0;
srand(time(NULL));
for(i=0;i<500;++i)
{
int j;
int k;
for(j=0;j<3;++j)
{
ball[j]=rand()%7+1;
for(k=0;k<j;++k)
{
if(ball[j]==ball[k])
{
--j;
break;
}
}
}
for(j=k=0;j<3;++j)
{
if(ball[j]%2)
{
++k;
}
else
{
--k;
}
printf("%3d",ball[j]);
}
puts("");
if(k==3)
{
++ball_white;
}
if(k==-3)
{
++ball_red;
}
}
printf("while=%d\tred=%d\n",ball_white,ball_red);
printf("白球机率为%.2f\t红球机率为%.2f\n",(ball_white/N)*100,(ball_red/N)*100);
return 0;
}
#include<stdio.h>
#include<time.h>
#define N 500.0
int main(void)
{
int ball[3];
int ball_white;
int ball_red;
int i;
ball_white=ball_red=0;
srand(time(NULL));
for(i=0;i<500;++i)
{
int j;
int k;
for(j=0;j<3;++j)
{
ball[j]=rand()%7+1;
for(k=0;k<j;++k)
{
if(ball[j]==ball[k])
{
--j;
break;
}
}
}
for(j=k=0;j<3;++j)
{
if(ball[j]%2)
{
++k;
}
else
{
--k;
}
printf("%3d",ball[j]);
}
puts("");
if(k==3)
{
++ball_white;
}
if(k==-3)
{
++ball_red;
}
}
printf("while=%d\tred=%d\n",ball_white,ball_red);
printf("白球机率为%.2f\t红球机率为%.2f\n",(ball_white/N)*100,(ball_red/N)*100);
return 0;
}