温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

如何用C语言写一个控制台版的2048

发布时间:2021-10-27 15:53:53 来源:亿速云 阅读:162 作者:柒染 栏目:大数据

如何用C语言写一个控制台版的2048,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。


先说说所需要用到的头文件:

#include <stdio.h>(不必多说)

#include <stdlib.h>(system等)

#include <string.h>(memset函数,非常有用)

#include <conio.h>(要使用到_getch(void);)
程序内经常用到bool,但是C语言中没有bool,因此需要定义一个类型bool:
typedef int bool;

#define true 1

#define false 0 
定义图像大小:
#define ROW 5

#define COL ROW 
定义各类数据:
空数:int BOX_NONE = 0;
用于判断某个位置是否有数字 : int g_iBox[ROW][COL];
保存游戏状态 :int game_state = 0;

应注意事项:

产生随机位置的数字: 

*p_i[rand() % count] = (1 + rand() % 2) * 2;

//产生随机数,rand() % count指的是随机数/0数后的余数,最终范围变成【0到count-1】

//后者同理 范围为 (1+[0,1])*2 = 2或4

//p_i已经有那些0值的位置了

位置交换:

//交换两个位置的值,一般是和0进行交换

两数字做加法:

//结合两个数,res是移动的那个

显示该游戏界面:

    如何用C语言写一个控制台版的2048

产生随机位置的数字:

如何用C语言写一个控制台版的2048

位置交换:

如何用C语言写一个控制台版的2048

两数字做加法:

如何用C语言写一个控制台版的2048

    最重要的是移动函数,移动函数中应该要注意每个位置的数字都要被操作,有数字的位置要和最边际的为零的位置进行交换。
    详见下面的整体代码:

如何用C语言写一个控制台版的2048如何用C语言写一个控制台版的2048

如何用C语言写一个控制台版的2048

如何用C语言写一个控制台版的2048

如何用C语言写一个控制台版的2048

如何用C语言写一个控制台版的2048

如何用C语言写一个控制台版的2048

如何用C语言写一个控制台版的2048

关于如何用C语言写一个控制台版的2048问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注亿速云行业资讯频道了解更多相关知识。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI