C++扑克牌记忆匹配游戏

这个是我的一次课设的作业,它并不是很难,但是感兴趣的话还是可以看一看。

一 编译环境

windows10+codeblocks

二 问题描述

“记忆匹配”( memory matching game )是小孩子喜欢玩的一个益智游戏。首先准备好一墩牌,它由几个“对儿”组成。例如,假定一墩牌里有6张牌,2张是“1”,2张是“2”,另外2张是“3”。现在洗好这墩牌,然后全部反扣在桌面上。玩家选择2张反扣着的牌,把它们翻过来,如果恰好是“一对儿”,就保持它们现在的样子,不要再反扣回去。相反,如果不是“一对儿,就把它们反扣回去。一直这样翻牌,直到最后所有牌都正面朝上。

写一个程序来完成这个记忆游戏。要求使用16张牌,他们按4 x 4排列,用1~8的数字成对标记这些牌。程序应该允许玩家通过一个坐标系来指定要翻的牌。

例如,假定现在的排面布局是:

 

   1 2 3  4   

---------------------------------------

1  | 8 * * *

2  | * * * *

3  | * 8 * *

4  | * * * *

 

所有牌都是反扣着的,除了“8”这一对儿。“8”这对牌位于坐标(1, 1)和(2, 3)处。为了隐藏被临时翻起来的牌,请输出大量换行符,强迫旧图离开屏幕。

三 源代码

#include <iostream>
#include <time.h>
#include <stdlib.h>
#include <stdio.h>
#include <fstream>//文件操作文件头
#include <windows.h>//延时函数文件头
#define size 4
using namespace std;

void print();//函数声明

//窗口的数据的展示
class Mainwindow
{
public:
    Mainwindow(){};
    ~Mainwindow(){};
    void init_data();//初始化数据
    int show_window(int a,int b,int c,int d);//将数据展示在界面上
private:
    int new_arrary[size][size];//记录翻牌后的界面分布
    int the_map[size][size];//界面上的数据
    int the_number[2];//定义一个长度为2的一维数组,记录数据
    int x1;
    int y1;
    int x2;
    int y2;

};

//初始化数据
void Mainwindow::init_data()
{
    x1=0;
    y1=0;
    x2=0;
    y2=0;
    the_number[0]=0;
    the_nu

  • 4
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值