33,027
社区成员




#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <time.h>
#include <windows.h>
void GenRandom(int A[])
{
int t = 0;
while(1)
{
A[0] = rand()%33+1;
A[1] = rand()%33+1;
A[2] = rand()%33+1;
A[3] = rand()%33+1;
A[4] = rand()%33+1;
A[5] = rand()%33+1;
A[6]=rand()%16+1;
if( A[0]!=A[1] && A[0]!=A[2] && A[0]!=A[3] && A[0]!=A[4] && A[0]!=A[5] &&
A[1]!=A[2] && A[1]!=A[3] && A[1]!=A[4] && A[1]!=A[5] &&
A[2]!=A[3] && A[2]!=A[4] && A[2]!=A[5] &&
A[3]!=A[4] && A[3]!=A[5] &&
A[4]!=A[5])
break;
}
for(int i=0;i<6;i++) //对前6个号码作升序排序
{
for(int j=0;j<6-i;j++)
if(A[j]<A[j-1])
{
t = A[j];
A[j] = A[j-1];
A[j-1] = t;
}
}
}
int Equal_A_a(int A[],int a[]) //看看前六个号码中有几个相等
{
int nCount = 0;
for(int i=0;i<6;i++)
if(A[i]==a[i]) nCount++;
return nCount;
}
int main(void)
{
int i = 0,j = 0;
int n = 0;
int A[7] = {0};
int a[7] = {0};
int Z[6] = {0};
size_t time_;
time_ = time(NULL);
srand(time_);
while(n<=0)
{
printf("请输入本期投注数:");
scanf("%d",&n);
}
GenRandom(A); //模拟摇奖
printf("摇出号码:");
for(i=0;i<7;i++)
printf("[%02d] ",A[i]);
printf("\n");
for(i=0;i<n;i++) //模拟投注
{
memset(a,0,sizeof(a));
GenRandom(a);
if(Equal_A_a(A,a)==6 && A[6]==a[6])
Z[0]++;
else if(Equal_A_a(A,a)==6 && A[6]!=a[6])
Z[1]++;
else if(Equal_A_a(A,a)==5 && A[6]==a[6])
Z[2]++;
else if((Equal_A_a(A,a)==5 && A[6]!=a[6])||(Equal_A_a(A,a)==4 && A[6]==a[6]))
Z[3]++;
else if((Equal_A_a(A,a)==4 && A[6]!=a[6])||(Equal_A_a(A,a)==3 && A[6]==a[6]))
Z[4]++;
else if(A[6]==a[6] && (Equal_A_a(A,a)==0 || Equal_A_a(A,a)==1 || Equal_A_a(A,a)==2))
Z[5]++;
else
continue;
}
printf("开奖情况\n");
printf("一等奖:%d\n",Z[0]);
printf("二等奖:%d\n",Z[1]);
printf("三等奖:%d\n",Z[2]);
printf("四等奖:%d\n",Z[3]);
printf("五等奖:%d\n",Z[4]);
printf("六等奖:%d\n",Z[5]);
return 0;
}