java发牌游戏.docx
- 文档编号:7943577
- 上传时间:2023-05-12
- 格式:DOCX
- 页数:32
- 大小:81.33KB
java发牌游戏.docx
《java发牌游戏.docx》由会员分享,可在线阅读,更多相关《java发牌游戏.docx(32页珍藏版)》请在冰点文库上搜索。
java发牌游戏
wyf
发牌游戏
描述:
共有1幅扑克牌,不包括大王和小王共52张牌。
可能有n个人参与扑克游戏,2<=n<=6。
程序运行时输入n,然后52张牌分别依次分发给n个人。
不能整除时,每个人的牌数
可以不同,如3个人,则第1个人18张,第2个和第3个人17张牌。
发牌完成后按花色(顺序为黑桃、红心、草花、方块)和牌面大小输出每个人得到的牌
例如:
输入人数:
3
输出如下:
第1个人:
黑桃:
K105A
红心:
1032
草花:
K10863A
方块:
QJ52
第2个人:
.......
第3个人:
......
首先我们用数组来实现牌堆
然后按花色排好,接着按大小牌;
用不同方法来实现不同功能。
效果图:
代码:
/**
*
*/
/**
*@authorAdministrator
/**
*
*/
/**
*@authorAdministrator
*
*/
importjava.util.Scanner;
publicclassPokerGame{
/**
*@paramargs
*/
publicstaticvoidmain(String[]args){
intn;
System.out.println("○发牌咯●");
System.out.println("请按1开始2退出");
Scanners=newScanner(System.in);
intch;
ch=s.nextInt();
switch(ch){
case1:
System.out.println("请输入玩家数量(0-6)~~~~(>_<)~~~~:
");
n=s.nextInt();
Sort(n);
System.out.println("请按1再来一次2退出");
ch=s.nextInt();
while(ch!
=2){
System.out.println("请输入玩家数量(0-6)~~~~(>_<)~~~~:
");
n=s.nextInt();
Sort(n);
System.out.println("请按1继续2退出");
ch=s.nextInt();
}
break;
case2:
break;
default:
break;
}
System.out.println("(^_^)/~~拜拜~~\\(^_^)");
}
publicstaticvoidSort(intn){
int[]deck=newint[52];
String[]suits={"黑桃","红心","草花","方块"};
String[]ranks={"A","2","3","4","5","6","7","8","9","10",
"J","Q","K"};
for(inti=0;i deck[i]=i; for(inti=0;i intindex=(int)(Math.random()*deck.length); intdemp=deck[i]; deck[i]=deck[index]; deck[index]=demp; } if(n==2){ for(inti=26;i<52;i++){ for(intj=26;j<52-i;j++) if(deck[j]/13>deck[j+1]/13){ intdemp=deck[j]; deck[j]=deck[j+1]; deck[j+1]=demp; } } for(inti=0;i<26;i++){ for(intj=0;j<26-i;j++) if(deck[j]/13>deck[j+1]/13){ intdemp=deck[j]; deck[j]=deck[j+1]; deck[j+1]=demp; } } for(inti=0;i<26;i++){ for(intj=0;j<26-i;j++) if(deck[j]%13 &&deck[j]/13==deck[j+1]/13){ intdemp=deck[j]; deck[j]=deck[j+1]; deck[j+1]=demp; } } System.out.println("第1个人: "); for(inti=0;i<26;i++){ Stringsuit=suits[deck[i]/13]; Stringrank=ranks[deck[i]%13]; if(i==0){ System.out.print(suit+": "); System.out.print(rank+""); }elseif(deck[i]/13 &&deck[i]/13! =deck[i+1]/13){ System.out.print(rank+""); System.out.printf("\n"); Stringsui=suits[deck[i+1]/13]; System.out.print(sui+": "); } else System.out.print(rank+""); } System.out.printf("\n"); intb=0; for(inti=26;i<52;i++,b++){ deck[b]=deck[i]; } for(inti=0;i<26;i++){ for(intj=0;j<26-i;j++) if(deck[j]/13>deck[j+1]/13){ intdemp=deck[j]; deck[j]=deck[j+1]; deck[j+1]=demp; } } for(inti=0;i<26;i++){ for(intj=0;j<26-i;j++) if(deck[j]%13 &&deck[j]/13==deck[j+1]/13){ intdemp=deck[j]; deck[j]=deck[j+1]; deck[j+1]=demp; } } System.out.println("第2个人: "); for(inti=0;i<26;i++){ Stringsuit=suits[deck[i]/13]; Stringrank=ranks[deck[i]%13]; if(i==0){ System.out.print(suit+": "); System.out.print(rank+""); }elseif(deck[i]/13 &&deck[i]/13! =deck[i+1]/13){ System.out.print(rank+""); System.out.printf("\n"); Stringsui=suits[deck[i+1]/13]; System.out.print(sui+": "); } else System.out.print(rank+""); } } if(n==3){ for(inti=26;i<52;i++){ for(intj=26;j<52-i;j++) if(deck[j]/13>deck[j+1]/13){ intdemp=deck[j]; deck[j]=deck[j+1]; deck[j+1]=demp; } } for(inti=0;i<18;i++){ for(intj=0;j<18-i;j++) if(deck[j]/13>deck[j+1]/13){ intdemp=deck[j]; deck[j]=deck[j+1]; deck[j+1]=demp; } } for(inti=0;i<18;i++){ for(intj=0;j<18-i;j++) if(deck[j]%13 &&deck[j]/13==deck[j+1]/13){ intdemp=deck[j]; deck[j]=deck[j+1]; deck[j+1]=demp; } } System.out.println("第1个人: "); for(inti=0;i<18;i++){ Stringsuit=suits[deck[i]/13]; Stringrank=ranks[deck[i]%13]; if(i==0){ System.out.print(suit+": "); System.out.print(rank+""); }elseif(deck[i]/13 &&deck[i]/13! =deck[i+1]/13){ System.out.print(rank+""); System.out.printf("\n"); Stringsui=suits[deck[i+1]/13]; System.out.print(sui+": "); } else System.out.print(rank+""); } System.out.printf("\n"); intc=0; for(inti=18;i<35;i++,c++){ deck[c]=deck[i]; } for(inti=0;i<17;i++){ for(intj=0;j<17-i;j++) if(deck[j]/13>deck[j+1]/13){ intdemp=deck[j]; deck[j]=deck[j+1]; deck[j+1]=demp; } } for(inti=0;i<17;i++){ for(intj=0;j<17-i;j++) if(deck[j]%13 &&deck[j]/13==deck[j+1]/13){ intdemp=deck[j]; deck[j]=deck[j+1]; deck[j+1]=demp; } } System.out.println("第2个人: "); for(inti=0;i<17;i++){ Stringsuit=suits[deck[i]/13]; Stringrank=ranks[deck[i]%13]; if(i==0){ System.out.print(suit+": "); System.out.print(rank+""); }elseif(deck[i]/13 &&deck[i]/13! =deck[i+1]/13){ System.out.print(rank+""); System.out.printf("\n"); Stringsui=suits[deck[i+1]/13]; System.out.print(sui+": "); } else System.out.print(rank+""); } System.out.printf("\n"); intd=0; for(inti=35;i<52;i++,c++){ deck[d]=deck[i]; } for(inti=0;i<17;i++){ for(intj=0;j<17-i;j++) if(deck[j]/13>deck[j+1]/13){ intdemp=deck[j]; deck[j]=deck[j+1]; deck[j+1]=demp; } } for(inti=0;i<17;i++){ for(intj=0;j<17-i;j++) if(deck[j]%13 &&deck[j]/13==deck[j+1]/13){ intdemp=deck[j]; deck[j]=deck[j+1]; deck[j+1]=demp; } } System.out.println("第3个人: "); for(inti=0;i<17;i++){ Stringsuit=suits[deck[i]/13]; Stringrank=ranks[deck[i]%13]; if(i==0){ System.out.print(suit+": "); System.out.print(rank+""); }elseif(deck[i]/13 &&deck[i]/13! =deck[i+1]/13){ System.out.print(rank+""); System.out.printf("\n"); Stringsui=suits[deck[i+1]/13]; System.out.print(sui+": "); } else System.out.print(rank+""); } } if(n==4){ for(inti=26;i<52;i++){ for(intj=26;j<52-i;j++) if(deck[j]/13>deck[j+1]/13){ intdemp=deck[j]; deck[j]=deck[j+1]; deck[j+1]=demp; } } for(inti=0;i<13;i++){ for(intj=0;j<13-i;j++) if(deck[j]/13>deck[j+1]/13){ intdemp=deck[j]; deck[j]=deck[j+1]; deck[j+1]=demp; } } for(inti=0;i<13;i++){ for(intj=0;j<13-i;j++) if(deck[j]%13 &&deck[j]/13==deck[j+1]/13){ intdemp=deck[j]; deck[j]=deck[j+1]; deck[j+1]=demp; } } System.out.println("第1个人: "); for(inti=0;i<13;i++){ Stringsuit=suits[deck[i]/13]; Stringrank=ranks[deck[i]%13]; if(i==0){ System.out.print(suit+": "); System.out.print(rank+""); }elseif(deck[i]/13 &&deck[i]/13! =deck[i+1]/13){ System.out.print(rank+""); System.out.printf("\n"); Stringsui=suits[deck[i+1]/13]; System.out.print(sui+": "); } else System.out.print(rank+""); } System.out.printf("\n"); inte=0; for(inti=13;i<26;i++,e++){ deck[e]=deck[i]; } for(inti=0;i<13;i++){ for(intj=0;j<13-i;j++) if(deck[j]/13>deck[j+1]/13){ intdemp=deck[j]; deck[j]=deck[j+1]; deck[j+1]=demp; } } for(inti=0;i<13;i++){ for(intj=0;j<13-i;j++) if(deck[j]%13 &&deck[j]/13==deck[j+1]/13){ intdemp=deck[j]; deck[j]=deck[j+1]; deck[j+1]=demp; } } System.out.println("第2个人: "); for(inti=0;i<13;i++){ Stringsuit=suits[deck[i]/13]; Stringrank=ranks[deck[i]%13]; if(i==0){ System.out.print(suit+": "); System.out.print(rank+""); }elseif(deck[i]/13 &&deck[i]/13! =deck[i+1]/13){ System.out.print(rank+""); System.out.printf("\n"); Stringsui=suits[deck[i+1]/13]; System.out.print(sui+": "); } else System.out.print(rank+""); } System.out.printf("\n"); intf=0; for(inti=26;i<39
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- java 发牌 游戏