1、一个商场进行一场抽奖活动,其中有两个奖项,第一个奖项A抽中的概率是1/6,第二个奖项B抽中的概率是5/6;用C语言编码实现这个抽奖程序。 题目通过一个XML文档给出。
生成一个真随机数。
随机数对6取余,得到的余数一定是0、1、2、3、4、5共六个数。
将这六个数分成两份(A和B),其中一份只有0这一个项,其余一份有1、2、3、4、5五个项。对随机数取余后的数进行比较,看它那一份中,借此判断出本次抽奖的结果。
#include<stdio.h>
#include<time.h>
#include<stdlib.h>
bool draw(); // 抽奖函数,结果为A返回true,结果为B返回false
int main()
{
char ret;// 记录结果
if(draw()) // 进行抽奖
ret='A';// 返回true,抽奖结果为A
else // 否则结果为B
ret='B';
printf("抽奖结果为:%c\n",ret); // 输出抽奖结果
return 0;
}
bool draw() // 抽奖函数实现
{
int ran; // 记录随机数对六取余的值
srand( (unsigned)time( NULL ) ); // 置随机数种子
ran = rand()%6; // 随机数对6取余
if(0 == ran) // 若ran为0
return true; // 返回true
else //