资源描述:
《对抗游戏程序设计》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、C++程序设计之对抗游戏#include#include#includeclassWar{intplayer,comp;//玩家,电脑的两张牌staticintScore;//player的赌资staticintnWin,nLost,nDraw;//赢,输,平的局数staticintLoop;//游戏进行的局数public:War();intPLAYER();//返回私有成员player的的值intCOMP();//返回私有成员comp
2、的的值voidSetCard();//随机发出两张牌voidShow(inta);//显示牌点voidJudge(int&);//计算机可根据自己的牌面判断是否加注staticintScores(int);voidfriendCompare1(War&,War&,int&,int);//判断牌面的大小,得出结果同时通过d返回输或赢的分数voidShowResult(int);//得到并显示在一局游戏中玩家得到的分数以及总计的分数voidTJ();//游戏结束后统计出最终的结果};intWar::
3、Score=26,War::nWin=0,War::nLost=0,War::nDraw=0,War::Loop=0;War::War(){player,comp=0;}intWar::PLAYER(){returnplayer;}intWar::COMP(){returncomp;}voidWar::SetCard(){player=rand()%13+2;comp=rand()%13+2;}voidWar::Show(inta){intpai;if(a==1)pai=player;elsei
4、f(a==2)pai=comp;switch(pai){case14:cout<<"A";break;case13:cout<<"K";break;case12:cout<<"Q";break;case11:cout<<"J";break;default:cout<=comp){switch(comp){case10:case11:case12:case13:case14:cout<<"电脑选择加
5、注";cout<<"加注金额:"<<2;y=2;cout<<'';break;default:cout<<"电脑选择加注";cout<<"加注金额:"<<1;y=1;cout<<'';break;}}else{cout<<"电脑也选择退出";y=0;}}intWar::Scores(intd=0){Score+=d;returnScore;}voidCompare(War&A,War&B,int&d,inty)//判断牌面的大小,同时通过d返回输或赢的分数{cout<<"##
6、####统计######";switch(y){case0:{if(A.PLAYER()>A.COMP()){cout<<"恭喜你^^,玩家的牌大!";d=1;}elseif(A.PLAYER()==A.COMP())cout<<"双方势均力敌!";else{cout<<"555,电脑的牌大!";d=-1;}break;}default:{inti,j,m,n;i=A.PLAYER()==B.PLAYER();j=A.COMP()==B.COMP();m=(A.PLAYER()+
7、B.PLAYER())>(A.COMP()+B.COMP());n=(A.PLAYER()+B.PLAYER())<(A.COMP()+B.COMP());if(i&&j){if(A.PLAYER()>A.COMP()){cout<<"恭喜你^^,玩家的对子大!";d=y+1;}elseif(A.PLAYER()8、喜你^^,玩家是对子!";d=y+1;}elseif(j==1&&i==0){cout<<"555,电脑是对子!";d=-y-1;}else{if(m){cout<<"恭喜你^^,玩家的牌大!";d=y+1;}elseif(n){cout<<"555,电脑的牌大!";d=-y-1;}else{cout<<"双方势均力敌!";d=0;}}}}}voidWar::ShowResult(intd)//计算出玩家输,赢,平的局数,给出玩家在当局得到的分数{Loop++;if(d>0)