最近迷恋彩票,无聊时用手机写的一个小程序。至于为什么要用纯C语言,因为我手机上下的编译器只支持C。
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <stdbool.h>
int cmp ( const void *a , const void *b )
{
return *(int *)a - *(int *)b;
}
bool isHaveSame(int array[],int size,int num)
{
for(int i=0;i<size;++i)
{
if(array[i]==num)
{
//printf("find same: %d\n",num);
return true;
}
}
return false;
}
int main(int argc, char** argv){
//大乐透5+2 最大:35,12
//双色球6+1 最大:33,16
int redMax=35;
int blueMax=12;
const int redSize=5;
const int blueSize=2;
int red[redSize];
int blue[blueSize];
//机选注数
int times=5;
srand((int)time(0));
while(times--)
{
for(int i=0;i<redSize;++i)
{
int num=(int)(rand()%redMax+1);
while(isHaveSame(red,i,num))
{
num=(int)(rand()%redMax+1);
}
red[i]=num;
}
for(int i=0;i<blueSize;++i)
{
int num=(int)(rand()%blueMax+1);
while(isHaveSame(blue,i,num))
{
num=(int)(rand()%blueMax+1);
}
blue[i]=num;
}
qsort(red,redSize,sizeof(red[0]),cmp);
for(int i=0;i<redSize;++i)
{
printf("%d ",red[i]);
}
printf("+ ");
qsort(blue,blueSize,sizeof(blue[0]),cmp);
for(int i=0;i<blueSize;++i)
{
printf("%d ",blue[i]);
}
printf("\n");
}
return 0;
}