2048小游戏c语言+easyx库

这篇博客介绍了如何用C语言结合EasyX库来创建2048小游戏。提供了项目的存放路径和无图形版的实现方式,同时也提到作者水平有限,欢迎反馈修正代码。
摘要由CSDN通过智能技术生成

在这里插入图片描述将代码存到D:\vs项目路径,并下载easyx库后即可试玩
或者加个windows.h玩不带图形版的。
本蒟蒻很菜,如有bug请私信我,本代码没有注释

在这里插入图片描述



#include <iostream>
#include <graphics.h>
#include <time.h>
#include <conio.h>
#include<cstdlib>
//#include <windows.h>
using namespace std;
int map[4][4];
int num;
int score=0;
int if_neednew = 0;
IMAGE img[12];
int imgnum[12] = {
    0,2,4,8,16,32,64,128,256,512,1024,2048 };
int is_over = 0;
void loadresourse()
{
   
    ;
}
void left()
{
   
    int i, j, k;
    for (i = 0; i < 4; i++)
    {
   
        for (k = 0, j = 1; j < 4; j++)
        {
   
            if (map[i][j] > 0)
            {
   
                if (map[i][k] == map[i][j])
                {
   
                    map[i][k] = 2 * map[i][k];
                    map[i][j] = 0;
                    if_neednew = 1;
                }
                else if (map[i][k] == 0)
                {
   
                    map[i][k] = map[i][j];
                    map[i][j] = 0;
                    if_neednew = 1;
                }
                else
                {
   
                    map[i][++k] = map[i][j];
                }
                if (k != j)
                {
   
                    map[i][j] = 0;
                    if_neednew = 1;
                }
            }
        }

    }
}
void right()
{
   
    int i, j, k;
    for (i = 0; i < 4; i++)
    {
   
        for (k = 3, j = 2; j >= 0; j--)
        {
   
            if (map[i][j] > 0)
            {
   
                if (map[i][k] == map[i][j])
                {
   
                    map[i][k] = 2 * map[i][k];
                    map[i][j] = 0;
                    if_neednew = 1;
                }
                else if (map[i][k] == 0)
                {
   
                    map[i][k] = map[i][j];
                    map[i][j] = 0;
                    if_neednew = 1;
                }
                else
                {
   
                    map[i][--k] = map[i][j];
                }
                if (k != j)
                {
   
                    map[i][j] = 0;
                    if_neednew = 1;
                }
            }
        }

    }
}
void up()
{
   
    int i, j, k;
    for (i = 0; i < 4; i++)
    {
   
        for (k = 0, j = 1; j < 4; j++)
        {
   
            if (map[j][i] > 0)
            {
   
                if (map[k][i] == map[j][i])
                {
   
                    map[k][i] = 2 * map[k][i];
                    map[j][i] = 0;
                    if_neednew
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值