案例描述
一盘游戏中,两人轮流掷骰子五次,并将每次的点数进行累加,累计点数大的人获胜,点数相同为平局,编程计算掷骰子50次之后的胜利者。
相关知识
- rand()函数可以生成一个无范围限制的随机数
- rand()%10 可以生成一个0-10之内的随机数
- 如要生成5-25之内的随机数,利用rand()函数对25-5=20取余,再+5,即rand()%20+5
以上几种情况产生的随机数都是一次性的,以后无论在运行多少次,结果都与第一次相同,为了每次都产生一个新的随机值,需要为随机数的生成提供一颗新的随机种子。此时用到srand()函数,成为随机数生成器的初始化器,其函数类型为:
viod srand(unsigned int seed)
srand((unsigned int) time(NULL));
以上代码表示用系统定时器的值作为随机数种子
在使用time()函数时,其参数一般是NULL,即直接传入空指针即可,如果感觉时间间隔太小,可以乘上合适的整数:
srand((unsigned int) time(