扑克牌游戏比大小用C++编程,自动生成一副扑克牌,并可以洗牌.然后人和电脑分别交替抓牌,抓过的牌按后来居上依次放置.首先双方从各自牌的下面取出一张牌,进行比大小,大的为胜.依此比完

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/04 02:43:03
扑克牌游戏比大小用C++编程,自动生成一副扑克牌,并可以洗牌.然后人和电脑分别交替抓牌,抓过的牌按后来居上依次放置.首先双方从各自牌的下面取出一张牌,进行比大小,大的为胜.依此比完

扑克牌游戏比大小用C++编程,自动生成一副扑克牌,并可以洗牌.然后人和电脑分别交替抓牌,抓过的牌按后来居上依次放置.首先双方从各自牌的下面取出一张牌,进行比大小,大的为胜.依此比完
扑克牌游戏比大小用C++编程,
自动生成一副扑克牌,并可以洗牌.然后人和电脑分别交替抓牌,抓过的牌按后来居上依次放置.首先双方从各自牌的下面取出一张牌,进行比大小,大的为胜.依此比完后,统计人和电脑的胜利的次数,最后宣布比赛结果.要求电脑能够说出一些调侃的话.界面美观,形象.

扑克牌游戏比大小用C++编程,自动生成一副扑克牌,并可以洗牌.然后人和电脑分别交替抓牌,抓过的牌按后来居上依次放置.首先双方从各自牌的下面取出一张牌,进行比大小,大的为胜.依此比完
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
#include<windows.h>

using namespace std;
int sum = 0;
int pc_win = 0;
int man_win = 0;
void swap(int a[],int m,int n,char s[] ){        //交换两个牌(用于洗牌)
    int c = a[m];
    a[m] = a[n];
    a[n]= c;
    char d = s[m];
    s[m] = s[n];
    s[n]= d;
}
void xipai(int a[],int n,char s[]){        //洗牌
    int i =1,j = 1;
    for(i = 0;i < n;i ++){
        do{
            j = rand()%52;
        }while( j == i);
        swap(a,i,j,s);
    }
}
void fapai(int a[],int b[],int c[],char s[],char ps[],char ms[]){  //发牌
    int i = 0,m = 25,n = 25;
    for(i = 0;i < 52;i++){
        if(i % 2) {
   b[m] = a[i];
   ps[m--] = s[i];
  }
        else {
   ms[n] = s[i];
   c[n--] = a[i];
  }
    }
}
void play(int b[],int c[],char* m[],char ps[],char ms[]){//游戏开始       
 int a1 = 0 ,a2 = 0;
    int i = 0;
    for( ;i < 26;i++){
        if(b[i] == c[i])
        cout<<"电脑出的牌是"<<ps[i] <<m[b[i]]<<", \t你出的牌是"<<ms[i]<<m[c[i]]<<endl;
        else if(b[i] > c[i]){
            a1++;
           cout<<"电脑出的牌是"<<ps[i] <<m[b[i]]<<", \t你出的牌是"<<ms[i]<<m[c[i]]<<endl;
        }else{
           a2++;
           cout<<"电脑出的牌是"<<ps[i] <<m[b[i]]<<", \t你出的牌是"<<ms[i]<<m[c[i]]<<endl;
        }
        Sleep(300);
     }
    sum ++;
 if (a1 == a2)
  cout<<"\n\n平局了"<<endl;
    if (a1 > a2){
        pc_win ++;
  cout<<"\n\n可惜你输了"<<endl;
 }
    if(a1 < a2){
        man_win ++;
 cout<<"\n\n恭喜你赢了"<<endl;
 }
}
void show(int a[],char* m[],char ms[]){
    int i = 0;
    cout<<"你有的牌和顺序是:"<<endl;
    for (i = 0;i < 26; i++)
        cout <<ms[i]<<m[a[i]]<<' ';
    cout<<endl;
}
void showscore (){
    if(sum == 0){
        cout<<"还没比呢,着什么急啊"<<endl;
  return;
 }
    printf("现在的大比分是:%d:%d",man_win,pc_win);
    if(man_win > pc_win)
        cout<<"你领先呢,恭喜"<<endl;
    else if(man_win < pc_win)
       cout<<"你落后呢,加油"<<endl;
    else if(man_win == pc_win)
       cout<<"战局很焦灼,再接再厉"<<endl;
}
void start(int a[],int b[],int c[],char* m[],char s[],char ps[],char ms[]){
    char i = 0; 
    srand((unsigned int)time(0));
    cout<<"欢迎来到比大小游戏中,请选择:\n1、开始游戏     2、显示比分     3、退出游戏 "<<endl;
    while(i = getch()){
        switch(i){
            case '1':    
                xipai(a,52,s);
                fapai(a,b,c,s,ps,ms);
                show(c,m,ms);
                play(b,c,m,ps,ms);
                break;
            case '2':    
                showscore();
                break;
            case '3':
                return;
        }
  cout<<"\n欢迎来到比大小游戏中,请选择:\n1、开始游戏     2、显示比分     3、退出游戏 "<<endl;
    }
}
int main(){
    int a[60] = {0},pc[30] = {0},man[30] = {0};
 char s[60] = {0},pc_s[30] = {0},man_s[30] = {0};
 char* m[14] = {"0","1","2","3","4","5","6","7","8","9","10","J","Q","K"};
    int i;
    for(i = 0;i < 13;i ++){
  s[i] = 3;
  s[i+13] = 4;
  s[i + 26] =5;
  s[i+39] = 6;
        a[i] = a[i +13] =a[i+26] = a[i + 39] = i+1;
 }
    start(a,pc,man,m,s,pc_s,man_s);
    cout<<"欢迎再次来玩本游戏"<<endl;
    return 0;
}

扑克牌游戏比大小用C++编程,自动生成一副扑克牌,并可以洗牌.然后人和电脑分别交替抓牌,抓过的牌按后来居上依次放置.首先双方从各自牌的下面取出一张牌,进行比大小,大的为胜.依此比完 已知a,b.玩扑克牌(6副牌)一人2张牌比大小.9点最大,0点最小.78次游戏为1局.6副牌52 X =312 张牌,无大小王.10,J,Q,K 为0点.a,b一人2张牌.用2张牌相加的点数比输赢.9点最大,0点最小.78次游戏为1局.问1 爸爸和儿子在用扑克牌做比大小的游戏,他们俩手里都有A、2、3、4、5、6、7、8、9、10这样的10张同样的扑克牌,爸爸随意抽出了一张比爸爸大的扑克牌的可能性是多少 用两组扑克牌:135和246玩比大小的游戏,游戏规则是3局2胜.假如你选择了第一组牌,怎样出牌才有赢的可能? 英语翻译“用现有自动编程软件生成数控铣削加工程序,并与手工编制的程序进行比较;” matlab自动格式重排matlab编程时 想自动排列格式一下,就是把循环啊,if的缩进自动对齐一下.一起用Visual C的时候,有快捷键的.Matlab有什么快捷键嘛,或者比较好的办法? 用红桃,黑桃,草花,方块各10张扑克牌设计一种游戏,使游戏公平 用扑克牌设计一个两人的游戏,使游戏双方获胜的概率相同 扑克牌每人发九张,然后分三道,分别比大小,叫什么?如题,只知道我们那叫比鸡,不知道学术名是什么,心血来潮想下个手机游戏玩玩!不知道有没有人知道的? 1 君君,立立和青青去超市购物,她们排在同一个交款口,青青交款用3分钟,立立交款用4分钟,君君交款用2分钟.怎样安排顺序可使三人等候的时间之和最少?2 小雨和小田玩扑克牌比大小的游戏,小 小亮和小红玩扑克牌比大小的游戏,三局两胜,小亮手中三张牌分别是10、9、8,小红的牌是8、7、6.小红调换出牌顺序能否保证自己获胜?为什么? 求大神给出用C语言编程生成正态分布随机数的程序,要不是标准正态分布的 想问一个关于概率的问题,懂概率的进来拿8副扑克牌,去掉大王和小王,然后洗牌,然后玩一个游戏.游戏为比点数大小,0点最小,9点最大,点大为赢,点数一样为和局.2到9分别代表牌面数值.10,J,Q,K分 扑克牌的大小顺序 在一平面内用游戏棒搭四个大小一样的等边三角形,至少要()根游戏棒.在空间打四个一样大小的等边三角形至少要几根游戏棒 3个人能玩什么扑克牌游戏 在单片机c编程 比较两个数的大小,输出大的数.且带串行口中断声明:不是平常用的C语言编程的,而是 “单片机”c编程。用keil软件开发的,并非TC 数学建模用matlab怎么编程,谁给我做个框架 C题:测井曲线自动分层问题 在地球物理勘探中需要利用测井资料