导航:首页 > 编程知识 > 扑克牌游戏什么编程语言比较简单

扑克牌游戏什么编程语言比较简单

发布时间:2023-03-03 19:40:24

① c语言程序设计扑克牌游戏

定义一个结构类型表示一张牌,结构包含3个成员,第一个成员char:取值2,3~K,A表示牌名字,第二个成员int:取值2~14表示牌真实大小。第三个成员:结构链表指针。
写一个初始化函数,定义52大小的结构数组,成员值初值分别和牌对应,遍历数组并将每个元素的链表指针依次指向下一个元素地址。这样得到一个初始链表。(相当于一盒新牌)
所有涉及随机数都用rand函数,洗牌分四份就是循环取随机数m=1~n,n是随循环自减,初值52,直到n变成0。每随一次循环就从初始链表中遍历取出对应第m个节点,并从初始链表中将这个节点断开(既前一个节点指针直接指向后一个节点指针)。每取13张就组成一个新的链表。这样获得4个新链表分别表示4个玩家。
最后出牌就是分别遍历自己的链表,利用循环取牌比较结构数值大小。(取出的牌要从链表断开和上面一样,你把取出节点写成独立函数就能反复使用)。

② 如何用c语言编写纸牌发牌程序

发牌原程序见我的空间(http://hi..com/crazycola/blog/item/52402bd4b3f68705a08bb746.html),可选是否包含大小王,可选发牌列数。

以下为改过的版本,不包含大小王(即总数52张),只能发4堆。

另外附加了用户菜单,原程序中不含菜单部分。

代码如下:

---------------------------------------
#include <stdlib.h>
#include <time.h>
#include <stdio.h>

int menu()
{
int choice;
printf("1 发牌/0 退出:");
scanf("%d",&choice);
return choice;
}

void main( void )
{
int i1, j, total;
int *iArr;
int tag = 0;
char* pok_C[] = { "黑桃", "红桃", "梅花", "方块" };
char* pok_N[] = { "A", "2", "3", "4", "5", "6", "7", "8", "9", "10", "J", "Q", "K" };

if(!menu()) exit(0);

total = 52;
srand( (unsigned)time( NULL ) );
iArr = (int*)malloc(total*sizeof(int));

for( i1=0; i1<total; i1++ )
{
iArr[i1]=rand()%total;
if( i1==0 ) continue;
do {
tag = 0;
for( j=0; j<i1; j++ )
if( iArr[j] == iArr[i1] )
{
iArr[i1]=rand()%total;
tag = 1;
}
} while( tag==1 );
}

for( i1=0; i1<total; i1++ )
{
printf("%s%s\t",pok_C[iArr[i1]%4],pok_N[iArr[i1]%13]);
if(i1%4==3) printf("\n");
}

free(iArr);

}

阅读全文

与扑克牌游戏什么编程语言比较简单相关的资料

热点内容
云闪付可以适用于哪些app 浏览:210
jsp循环输出44的表格 浏览:772
win10有哪些必装软件 浏览:151
xml文件打开是空白 浏览:79
snifferpro使用教程 浏览:391
各部门统计数据要统一该怎么表达 浏览:405
bat文件名汇总到excel 浏览:220
如何使用机器语言去编程 浏览:244
审计要学哪些编程帮助工作 浏览:988
qq账号注销要去哪个网站 浏览:337
安装在手机里的app怎么分解 浏览:865
新主板做xp系统教程 浏览:751
linux访问php文件 浏览:58
光驱数据线连接在主板哪里 浏览:577
85版本怎么样赚钱快 浏览:14
计算机网络信息保密技术 浏览:855
jsonformat注解用法 浏览:697
设置ipad需要选择备份文件路径 浏览:309
电脑文件怎么保存到桌面不卡 浏览:810
java获得本机外网的ip地址 浏览:391

友情链接