我想用C语言写个程序,大约类似自动出牌

2024-12-17 15:00:17
推荐回答(4个)
回答1:

#include
#include
#include
#include
#define N 52

int main(void)
{
int poker[N + 1];
int i, j, tmp, remain;
/* 初始化阵列 */
for (i = 1; i <= N; i++)
{
poker[i] = i;
//printf("%d ", poker[i]);
}
printf("\n");
srand(time(0));
/* 洗牌 */
for (i = 1; i <= N; i++)
{
j = rand() % N + 1;
tmp = poker[i];
poker[i] = poker[j];
poker[j] = tmp;
}
for (i = 1; i <= N; i++)
{
//printf("%d ", poker[i]);
}
/* 判断花色 */
for (i = 1; i <= N; i++)
{
switch((poker[i] - 1) / 13)
{
case 0:
printf("桃"); break;
case 1:
printf("心"); break;
case 2:
printf("砖"); break;
case 3:
printf("梅"); break;
}
/* 数字 */
remain = poker[i] % 13;
switch(remain)
{
case 0:
printf("K "); break;
case 12:
printf("Q "); break;
case 11:
printf("J "); break;
default:
printf("%d ", remain); break;
}
if (i % 13 == 0)
printf("\n");
}
return 0;
}

这是洗牌的程序 52张牌

回答2:

出牌之前判定牌是什么,如果能压得住,就调用出牌函数,出牌程序最主要的还是排序,判定。只是给你提供以下思路,以前自己写过一个发牌程序,但原理还是差不多的。

回答3:

出牌之前判定牌是什么,如果能压得住,就调用出牌函数,出牌程序最主要的还是排序,判定。只是给你提供以下思路,以前自己写过一个发牌程序,但原理还是差不多的。看看楼上的代码,还是不错的

回答4:

留下QQ,发你一个争上游的,自己看看吧