博客> IOS通知栏微信牛牛房卡下载中通知栏的适配
IOS通知栏微信牛牛房卡下载中通知栏的适配
2019-09-15 08:29 评论:0 阅读:455 a8451
ios

联系方式:QQ:2747044651 网址请添加链接描述 /建立二人牛牛游戏的程序/

include

include

include

include

/牌的数据结构/ typedef struct { char face[4]; int num; }FACE; /建立返回牌结果的数据结构/ typedef struct { int result; //点数 int max; //最大的那张牌 int number; //如果多张牌时返回 int numberzhi; }PAIRESULT; /建立总共纸牌初始函数/ void inition(FACE zong[]) { int i; for(i=1;i<=4;i++) { strcpy(zong[i].face,"3"); zong[i].num=0; } for(i=5;i<=8;i++) { strcpy(zong[i].face,"4"); zong[i].num=1; } for(i=9;i<=12;i++) { strcpy(zong[i].face,"5"); zong[i].num=2; } for(i=13;i<=16;i++) { strcpy(zong[i].face,"6"); zong[i].num=3; } for(i=17;i<=20;i++) { strcpy(zong[i].face,"7"); zong[i].num=4; } for(i=21;i<=24;i++) { strcpy(zong[i].face,"8"); zong[i].num=5; } for(i=25;i<=28;i++) { strcpy(zong[i].face,"9"); zong[i].num=6; } for(i=29;i<=32;i++) { strcpy(zong[i].face,"10"); zong[i].num=7; } for(i=33;i<=36;i++) { strcpy(zong[i].face,"J"); zong[i].num=8; } for(i=37;i<=40;i++) { strcpy(zong[i].face,"Q"); zong[i].num=9; } for(i=41;i<=44;i++) { strcpy(zong[i].face,"K"); zong[i].num=10; } for(i=45;i<=48;i++) { strcpy(zong[i].face,"A"); zong[i].num=11; } for(i=49;i<=52;i++) { strcpy(zong[i].face,"2"); zong[i].num=12; } } /建立输出函数/ void output(int n,FACE zong[],int k) { int i; printf("/n"); if(k==2) printf("这是玩家的牌/n"); else printf("这是庄家的牌/n"); for(i=1;i<=n;i++) printf("%s ",zong[i].face); printf("/n"); } /建立洗牌函数/ void xipai(FACE zong[]) { int i,j; long k; FACE temp; srand(time(NULL)); for(k=1;k<1000 i=1+rand()R; j=1+rand()R; temp=zong[i]; zong[i]=zong[j]; zong[j]=temp; i=1,c1 c2=1; for(i=1;i player1[c1++]=zong[i++]; player2[c2++]=zong[i++]; for(i=0;i for(j=1;j>player[j+1].num) { temp=player[j]; player[j]=player[j+1]; player[j+1]=temp; } } /建立只有三张非纸牌的函数/ int san(int a2[]) { if((a2[0]+a2[1]+a2[2])==0)//三张牌和为十的倍数时 return 10; else //没有牛时 {
/以下是有两张牌和为10时/ if(a2[0]+a2[1]==10) return a2[2];
if(a2[0]+a2[2]==10) return a2[1]; if(a2[1]+a2[2]==10) return a2[0]; else return 0; } }

/建立有四张非花牌时的函数/ int si(int a[]) { if((a[0]+a[1]+a[2])==0) //其中有三张牌和为10的倍数时 return a[3]; if((a[0]+a[1]+a[3])==0) return a[2]; if((a[0]+a[2]+a[3])==0) return a[1]; if((a[3]+a[1]+a[2])==0) return a[0]; /以下是有两张牌和为1/ else { if(a[0]+a[1]==10&&a[2]+a[3]==10) return 10; if(a[0]+a[1]==10&&a[2]+a[3]!=10) return (a[2]+a[3]); if(a[0]+a[2]==10&&a[1]+a[3]==10) return 10; if(a[0]+a[2]==10&&a[1]+a[3]!=10) return (a[1]+a[3]); if(a[0]+a[3]==10&&a[2]+a[1]==10) return 10; if(a[0]+a[3]==10&&a[2]+a[1]!=10) return (a[2]+a[1]); if(a[1]+a[2]==10&&a[0]+a[3]==10) return 10; if(a[1]+a[2]==10&&a[0]+a[3]!=10) return (a[0]+a[3]); if(a[1]+a[3]==10&&a[0]+a[2]==10) return 10; if(a[1]+a[3]==10&&a[0]+a[2]!=10) return (a[2]+a[0]); if(a[2]+a[3]==10&&a[0]+a[1]==10) return 10; if(a[2]+a[3]==10&&a[0]+a[1]!=10) return (a[0]+a[1]); /若无法凑出十时,点为零/ else return 0; }
} /若无张牌都为非花牌,即五张非花牌时,若要有点数,必须用三张牌来凑点数/ int wu(int a[]) { if((a[0]+a[1]+a[2])==0&&a[3]+a[4]==10) return 10; if((a[0]+a[1]+a[2])==0&&a[3]+a[4]!=10) return (a[3]+a[4]);

if((a[0]+a[1]+a[3])==0&&a[2]+a[4]==10) return 10; if((a[0]+a[1]+a[3])==0&&a[2]+a[4]!=10) return (a[2]+a[4]);

if((a[0]+a[1]+a[4])==0&&a[2]+a[3]==10) return 10; if((a[0]+a[1]+a[4])==0&&a[2]+a[3]!=10) return (a[2]+a[3]);

if((a[0]+a[2]+a[3])==0&&a[1]+a[4]==10) return 10; if((a[0]+a[2]+a[3])==0&&a[1]+a[4]!=10) return (a[1]+a[4]);

if((a[0]+a[2]+a[4])==0&&a[1]+a[3]==10) return 10; if((a[0]+a[2]+a[4])==0&&a[1]+a[3]!=10) return (a[1]+a[3]);

if((a[0]+a[4]+a[3])==0&&a[2]+a[1]==10) return 10; if((a[0]+a[4]+a[3])==0&&a[2]+a[1]!=10) return (a[2]+a[1]);

if((a[2]+a[1]+a[3])==0&&a[4]+a[0]==10) return 10; if((a[2]+a[1]+a[3])==0&&a[0]+a[4]!=10) return (a[0]+a[4]);

if((a[2]+a[1]+a[4])==0&&a[0]+a[3]==10) return 10; if((a[2]+a[1]+a[4])==0&&a[0]+a[3]!=10) return (a[0]+a[3]);

if((a[4]+a[1]+a[3])==0&&a[2]+a[0]==10) return 10; if((a[4]+a[1]+a[3])==0&&a[2]+a[0]!=10) return (a[2]+a[0]);

if((a[2]+a[4]+a[3])==0&&a[0]+a[1]==10) return 10; if((a[2]+a[4]+a[3])==0&&a[0]+a[1]!=10) return (a[0]+a[1]); else return 0; } /建立求最大值的函数/ int searchmaxpai(FACE player[]) { int a[7]={0},i,max; for(i=1;i<=5;i++) { if(player[i].num>=11) a[i]=player[i].num-13; else a[i]=player[i].num; } for(max=a[1],i=1;i<=5;i++) if(max<a[

收藏
0
sina weixin mail 回到顶部