#include<stdio.h>
#include<time.h>
const int MAX1=33
const int MAX2=16
void main()
{
int x[6]={0}
int y=0
int i,j,k,r
k=0
srand(time(0))
while(k<6)
{
r=rand()%MAX1+1
for(i=0i<ki++)
if(x[i]==r)
break
x[k++]=r
}
y=rand()%MAX2+1
for(i=0i<6i++)
printf("%d ",x[i])
printf(" %d",y)
}
C语言 这个用结构体 还不如直接用变量来的方便。
#include "stdio.h"struct colorb
{
int redb[6]
int blueb
}
//函数根据双色球说明写下的判断几等奖,i是红球中奖数,m是篮球。
void dengji(i,m)
{
switch(i)
{
case 0:if(m==1)printf("6")break
case 1:if(m==1)printf("6")break
case 2:if(m==1)printf("6")break
case 3:if(m==1)printf("5")break
case 4:if(m==1)printf("4")else printf("5")break
case 5:if(m==1)printf("3")else printf("4")break
case 6:if(m==1)printf("1")else printf("2")break
default:printf("0")
}
printf("\n")
}
int main()
{
struct colorb real,test
int m,n,i=0
printf("please input:")
scanf("%d%d%d%d%d%d%d",&real.redb[0],&real.redb[1],&real.redb[2],&real.redb[3],&real.redb[4],&real.redb[5],&real.blueb)
while(1)
{
printf("please search:")
scanf("%d%d%d%d%d%d%d",&test.redb[0],&test.redb[1],&test.redb[2],&test.redb[3],&test.redb[4],&test.redb[5],&test.blueb)
if(test.blueb<0)break//篮球输入负数,退出循环。
for(m=0m<=5m++)
for(n=0n<=5n++)
if(real.redb[m]==test.redb[n])
{
i++//判断红球中有几个是相同的。
printf("%d ",real.redb[m]) //输出相同的红球
break
}
m=real.blueb==test.blueb?1:0
printf("RED:%d ",i)//输出红球个数
printf("BLUE:%d\n",m)//输出篮球个数
dengji(i,m)//判断几等奖
}
return 0
}