#include
typedef struct card
{
int num;//A 1~10 J Q K
int clr;//0黑桃,1.紅桃,2.梅花3.方塊
}Crd;
static int count=0;//申明一個全域性靜態變數,當一副牌發完4次以後,重新洗牌。
char clr[4][5]={"黑桃","紅桃","梅花","方塊"};
char person[3][3]={"甲","乙","丙"};
void sub1(int a[4][13],Crd array[3][4])
int i,j;
if(count%4==0)
for(i=0;i
for(j=0;j
a[i][j]=0;
}
srand((unsigned int)time(NULL));
//發牌
int m,n;
while(a[m=rand()%4][n=rand()%13]);
a[m][n]=1;
array[i][j].num =n+1;
array[i][j].clr =m;
system("cls");
printf("%s : ",person[i]);
char temp[3]={0};
if(array[i][j].num==1)
temp[0]="A";
else if(array[i][j].num==11)
temp[0]="J";
else if(array[i][j].num==12)
temp[0]="Q";
else if(array[i][j].num==13)
temp[0]="K";
else if(array[i][j].num==10)
temp[0]="1";
temp[1]="0";
else
temp[0]=array[i][j].num +"0";
printf("%s %2s ",clr[array[i][j].clr],temp);
printf("\n");
printf("\n隨機生成牌點成功完成!");
count++;
system("pause");
//比較大小,因為是一副牌,不會出現相等的情況
void sub2(Crd array[3][4])
int i,j,k;
Crd t;
for(k=j+1;k
if(array[i][j].num
#include
#include
#include
typedef struct card
{
int num;//A 1~10 J Q K
int clr;//0黑桃,1.紅桃,2.梅花3.方塊
}Crd;
static int count=0;//申明一個全域性靜態變數,當一副牌發完4次以後,重新洗牌。
char clr[4][5]={"黑桃","紅桃","梅花","方塊"};
char person[3][3]={"甲","乙","丙"};
void sub1(int a[4][13],Crd array[3][4])
{
int i,j;
if(count%4==0)
{
for(i=0;i
{
for(j=0;j
a[i][j]=0;
}
}
srand((unsigned int)time(NULL));
//發牌
for(i=0;i
{
for(j=0;j
{
int m,n;
while(a[m=rand()%4][n=rand()%13]);
a[m][n]=1;
array[i][j].num =n+1;
array[i][j].clr =m;
}
}
system("cls");
for(i=0;i
{
printf("%s : ",person[i]);
for(j=0;j
{
char temp[3]={0};
if(array[i][j].num==1)
temp[0]="A";
else if(array[i][j].num==11)
temp[0]="J";
else if(array[i][j].num==12)
temp[0]="Q";
else if(array[i][j].num==13)
temp[0]="K";
else if(array[i][j].num==10)
{
temp[0]="1";
temp[1]="0";
}
else
temp[0]=array[i][j].num +"0";
printf("%s %2s ",clr[array[i][j].clr],temp);
}
printf("\n");
}
printf("\n隨機生成牌點成功完成!");
count++;
system("pause");
}
//比較大小,因為是一副牌,不會出現相等的情況
void sub2(Crd array[3][4])
{
int i,j,k;
Crd t;
for(i=0;i
{
for(j=0;j
{
for(k=j+1;k
{
if(array[i][j].num