求解,这个简单的彩票程序
程序代码:
#include <stdio.h> #include <stdlib.h> #include <time.h> void select_red() //1-33中选取6个红色球 存在问题:会出现重复的选号 { int i,j,red[6],num=0; srand((unsigned)time(0)); //随机事件 for (i=0;i<6;i++) { red[i] = rand()%33+1; //选取号码 for (j=0;j<i;j++) { if (red[i]==red[j]) //重复的话重选(可是好像没用哦) do { red[i] = rand()%33+1; }while(red[i]!=red[j]); } } printf("红球: "); //输出红球结果 for (i=0;i<6;i++) { printf("%02d ",red[i]); } } void select_blue() //选蓝号 { int blue; srand((unsigned)time(NULL)); //设置随机 blue = rand()%16+1; //1-16号选取一个 printf("蓝球: %02d\n",blue); } void main() { int i,n; printf("请输入购买的彩票数量:\n"); scanf("%d",&n); //存在问题:怎么10次的选号都一样?? for (i=0;i<n;i++) { select_red(); select_blue(); } printf("\n彩票总价格为%d\n",n*2); getchar(); }