扑克牌比大小c语言,算了算学了有一个月c语言了,写了个扑克牌程序
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
/*将5张扑克牌转化为9种牌型 */
int change(int card[])
{
if(checkTongHuaShun(card))//同花顺牌型8
{
return 8;
}
else if(checkSiTiao(card))//四条牌型7
{
return 7;
}
else if(checkSanTiaoYiDui(card))//三条一对牌型6
{
return 6;
}
else if(checkTongHua(card))//同花牌型5
{
return 5;
}
else if(checkShunzi(card))//顺子牌型4
{
return 4;
}
else if(checkSanTiao(card))//三条牌型3
{
return 3;
}
else if(checkLiangDui(card))//两对牌型2
{
return 2;
}
else if(checkDuiZi(card))//对子牌型1
{
return 1;
}
else//散牌牌型0
{
return 0;
}
}
/* 比较两数大小>返回1,
int cmp(int a,int b)
{
if(a>b)
{
return 1;
}
else if(a
{
return -1;
}
else
{
return 0;
}
}
/*比较两幅同花顺,同花,顺子,散牌的大小*/
int cmpShunOrSanPai(int card1[],int card2[])
{
if(card1[M-1]/4!=card2[M-1]/4)//第5张牌不相等
{
return cmp(card1[M-1]/4,card2[M-1]/4);//返回第5张牌的大小比较
}
else
{
return cmp(card1[M-1]%4,card2[M-1]%4);//返回第5张牌的花色比较
}
}
/*返回四条对应的扑克数字的编号*/
int maxSiTiao(int card[])
{
int i;
for(i=0;i
{
if(card[i]/4==card[i+1]/4)//返回两张连续相等的牌对应的数字的编号
{
return card[i+1];
}
}
return 0;
}
/* 比较两幅四条的大小*/
int cmpSiTiao(int card1[],int card2[])
{
return cmp(maxSiTiao(card1)/4,maxSiTiao(card2)/4);
}
/* 返回三条对应的扑克的数字编号*/
int maxSanTiao(int card[])
{
int i;
for(i=0;i
{
if(card[i]/4==card[i+1]/4&&card[i]/4==card[i+2]/4)//返回3张连续相等牌最大数字的编号
{
return card[i+2];
}
}
return 0;
}
/* 比较两幅三条的大小 */
int cmpSanTiao(int card1[],int card2[])
{
return cmp(maxSanTiao(card1)/4,maxSanTiao(card2)/4);
}
/* 返回两对中较大的一对的扑克牌对应的数字*/
int maxLiangDui(int card[])
{
int a,i;
for(i=0;i
{
if(card[i]/4==card[i+1]/4)//最后的相等的数字为最大的数字
{
a=card[i+1];
}
}
return a;
}
/* 返回两对中较小的一对对应的牌的大小 */
int minLiangDui(int card[])
{
return maxSiTiao(card);//最前面的第2个数字
}
/*比较两幅两对的大小*/
int cmpLiangDui(int card1[],int card2[])
{
if(maxLiangDui(card1)/4!=maxLiangDui(card2)/4)//最大对牌的大小不相等
{
return cmp(maxLiangDui(card1)/4,maxLiangDui(card2)/4);
}
else if(minLiangDui(card1)/4!=minLiangDui(card2)/4)//最小对牌的大小不相等
{
return cmp(minLiangDui(card1)/4,minLiangDui(card2)/4);
}
else//都相等返回最大对对应的最大花色
{
return cmp(maxLiangDui(card1)%4,maxLiangDui(card2)%4);
}
}
/* 比较两副对子的大小*/
int cmpDuiZi(int card1[],int card2[])
{
if(maxLiangDui(card1)/4!=maxLiangDui(card2)/4)//直接调用两对中最大对的返回函数即可
扑克牌比大小c语言,算了算学了有一个月c语言了,写了个扑克牌程序相关推荐
- 发纸牌c语言指针,算了算学了有一个月c语言了,写了个扑克牌程序
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 /*将5张扑克牌转化为9种牌型 */ int change(int card[]) { if(checkTongHuaShun(card))//同花顺牌型 ...
- c语言 扑克 编程,算了算学了有一个月c语言了,写了个扑克牌程序
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 /*将5张扑克牌转化为9种牌型 */ int change(int card[]) { if(checkTongHuaShun(card))//同花顺牌型 ...
- c语言e怎么表示_如何一个月学完c语言
大一的时候,一点都不自律,什么科目都是去那点名后,然后坐在最角落初自个玩手机,特别是程序课,我一个都不懂,有听一两节课还是听不懂,反正就是不懂就对了.课后也没复习.到了期中考,考了才知道我确实废了.不 ...
- c语言把bit数据合为一个字节,C语言中怎么定义bit型数据
一.通过sbit或者bit定义 sbit映射到IO口(P1^1这种IO口的"位") bit在RAM中的可位寻址空间中,一般用作程序判断的标志位. 认为它们一个对外(sbit),一个 ...
- c语言单链表需要头结点,一个关于C语言链表头结点的问题
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 #include #include #include typedef struct STU{ int sno; char sname[10]; float ...
- python语言用什么关键字来声明一个类_Python语言和标准库(第三章:类和对象)...
python如何将函数和数据整合在一起,并且通过一个对象的名称访问它们. 如何和为什么使用类与对象,以及他们如何使编程人员易于多种情形下编写和使用程序. 3.1考虑编程 现在要在python中创建一个 ...
- c语言设计奥运奖牌管理系统,求一个用C语言编程的奥运奖牌管理系统
匿名用户 1级 2008-08-12 回答 首先声明20 分不多哦. struct jp{ char country[30]; int medal[3];//下标0表示金牌,1表示银牌,2表示铜牌 } ...
- c语言实现在数组中找一个数字显示,C语言找出数组中的特定元素的算法解析
问题描述:一个int数组,里面数据无任何限制,要求求出所有这样的数a[i],其左边的数都小于等于它,右边的数都大于等于它.能否只用一个额外数组和少量其它空间实现. 思路:如果能用两个辅助数组,那么相对 ...
- C语言typedef:给类型起一个别名
C语言typedef:给类型起一个别名 C语言允许为一个数据类型起一个新的别名,起别名的目的不是为了提高程序运行效率,而是为了编码方便.例如有一个结构体的名字是 stu,要想定义一个结构体变量就得这样 ...
最新文章
- 从特急到难产 光伏增补项目抢不抢630?
- linux常见问题解答汇总
- android-技术教程-调试程序的基础,在控制台上打印出想打印的东西 转载
- python和c学习-关于本站 - cPython - 给大学生的入门教程
- FireBug(Firefox Plugin) 好用的web开发助手
- iOS开发笔记 3、iOS基础
- mongodb在windows下安装启动
- group by 和count 联合使用问题
- 基于神经网络的实体识别和关系抽取联合学习
- vue小案例一:todolist
- 华为hg255d路由器使用博爱网络开发的操作系统进行中继设置
- xpdf 打开 chinapub中文pdf
- SG2525_电压模式PWM——科时进商城
- 如何自学C语言(一个菜鸟的学习路)
- java poi 2007,『分页符有什么用』java poi导出excel2007插入分页符无效,该如何解决,求代码!...
- html链接网址打不开,网页可以进,但是里面的超级链接点击打不开?
- buildroot 交叉编译 剥离arm架构的二进制文件
- Apache Zookeeper配置
- CToolBar的使用总结(转)
- CSS3动画结束闪烁问题