当前位置:   article > 正文

用C语言模拟双色球开奖

用C语言模拟双色球开奖

用c语言模拟双色球开奖

问题描述:

/* 双色球是中国福利彩票目前最火的一种玩法。而彩票是以抽签给奖方式进行筹款或敛财所发行的凭证,并非是赌博,每天都有上亿的彩民关注着双色球的开奖结果。其彩票投注区分为红色球号码区和蓝色球号码区,每注投注号码由6个红色球和1个蓝色球号码组成。红色球号码从1~33中选择,蓝色球号码从1~16中选择每期开出的红色球号码不能重复,但是蓝色球可以使红色球中的一个。案例要求编写程序模拟双色球的开奖过程,由程序随机产生6个红色球号码和1个蓝色球号码并把结果输出到屏幕上。*/
 

思路分析:

  1. 用时间作为随机数种子,把生成的随机数放到一维数组中
  2. 当i小于等于6时,需要重复判断第i个数字是否与先前的数字重合,如果重合,重新生成一个随机数,直到不相同为止;
  3. 当i等于7时随机生成一个1~16的数字存入数组,把7位数的数组输出,就生成了一个双色球号码;

 

 

代码明细:

 

  1. #include<stdio.h>
  2. #include<stdlib.h>
  3. #include<time.h>
  4. int scsjs();
  5. int main()
  6. {int i,j,a[100];
  7. srand((unsigned int )time(NULL)) ; //用时间做随机数的种子
  8. for(i=0;i<7;i++)
  9. {
  10. if(i<=6)
  11. { a[i]=scsjs();
  12. for(j=0;j<i;j++)
  13. if(i>0&&a[i]==a[j]) //判断第i个数字是否与之前的数字重合
  14. while(a[i]==a[j]) // 如果重合,重新生成随机数
  15. a[i]= scsjs();
  16. }
  17. else
  18. a[i]=rand()%16+1; //取模运算
  19. }
  20. for(i=0;i<7;i++)
  21. printf("%d ",a[i]);
  22. return 0;
  23. }
  24. int scsjs()
  25. {
  26. return rand()%33+1;
  27. }

 运行结果:

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/你好赵伟/article/detail/806770
推荐阅读
相关标签
  

闽ICP备14008679号