分享代码 快乐编程

一起学习,一起进步,从分享代码开始~

程序员专用的打字练习程序(by 温良)

这是一个专门给初学 C 语言的同学用的练习打字的程序。

屏幕上会落下来几个单词(都是 C 语言的关键字),然后通过键盘输入任意一个单词,如果输入正确,下落的对应单词就会消失。

程序会统计实时的准确率和打字速度等数据。

执行效果如下:

完整的源代码如下:

//////////////////////////////////////////////////////
// 程序名称:C 语言码农专用的打字练习程序
// 编译环境:Visual C++ 2008, EasyX_20190415(beta) 
// 作  者:温良(大一)
//    QQ:1677376433
// 最后修改:2019-5-10
//
#include <graphics.h>
#include <conio.h>
#include <time.h>
#include
...

2048(by 洛枫)

经典的 2048 游戏的 C/C++ 实现!

这是个益智游戏,规则很简单,按上、下、左、右键,使游戏区域的所有方块向该方向滑动,每次滑动时,相碰的两个相同数字会合并。同时,空白的地方也会在随机出现一个数字方块(2 或者 4)。游戏目标,是想办法合成 2048 这个数字方块。

执行效果如下:

完整的源代码如下:

/*
项目名称:2048
开发工具:Visual Studio 2017,EasyX 20190415(beta)
项目类型:Windows Consoal Application
作者:洛枫
QQ:1101458726
Email:1101458726@qq.com
发布日期:2019-4-17
最后修改:2019-4-24
*/

#include <easyx.h>
#include <string.h>
#include <map>
#
...

小球连连看(by 洛枫)

游戏玩法:从第一个小球出发,按鼠标左键发射射线连接第二个小球,直到重新连接到第一个小球,形成闭环游戏过关。

游戏难度逐关递增。第一关小球位置随机,第二关球更小更多,第三关球会移动。

游戏运行截图如下:

该游戏的编译环境:Visual C++ 2008,EasyX_20190314(beta)

全部游戏源代码【请点击这里下载】

作者:洛枫
QQ:1101458726
Email:1101458726@qq.com

C 语言高仿 FlappyBird 电脑版(by 徐洛洛)

该程序是用 C 语言实现的 FlappyBird 的电脑版,玩法和手机版的相同。

程序通过 alpha 域实现透明贴图,并且通过双缓冲绘图防止刷新闪屏。

程序执行效果如下:

该程序的编译环境:Visual C++ 2008,EasyX 20190314(beta)
项目类型:控制台程序

完整的项目代码与资源【请点击这里下载】

作者:徐洛洛
QQ:1584133118
Email:1584133118@qq.com

贪婪球(by 奶酪)

这是模仿球球大作战写的小游戏,有食物、敌人、外面的毒圈。

操作很简单,用 A S D W 四个键控制球的移动方向。

地图大小是屏幕的16倍,吃完所有敌人就胜利。记住不要被敌人吃掉哦!

想和我交流的可以加我 QQ:2190038793

执行效果如下:

完整的 VC++ 源代码如下:

///////////////////////////////////////////////////
// 程序名称:贪婪球 1.6
// 编译环境:Microsoft Visual studio 2017,EasyX 2018春分版
// 作  者:奶酪
// 邮  箱:2190038793@qq.com
// 发布日期:2019-2-10
// 最后修改:2019-2-15
//
#include <graphics.h>
#include <conio.h>
...

飞机大战游戏(by 刘华欣)

这是一个简单的飞机空战游戏。

游戏操作说明:

w、s、a、d 控制飞机移动
k 发射子弹
空格暂停
ESC退出

敌机自动发射子弹、自动移动

当飞船碰到敌机、飞船血量为 0、敌机碰到底部时游戏结束
敌机血量为 0 时,会出现一个新的敌机
小敌机随机出现

结束后按 ESC 退出,按 R 重来。

游戏运行截图如下:

该游戏的编译环境为:Visual C++ 2013,EasyX_20190219(beta)。

完整的游戏源码包【点击这里下载】

作者:刘华欣
QQ:1359240780

...

迷宫(by 祝融)

玩家被困在一个迷宫里,拥有一盏油灯,油灯能够照亮以玩家为中心的一片圆形区域,随着时间的流逝,油灯的照明力会逐渐下降,迷宫内随机分布着一些加油站(黄色的圆角矩形),经过这些加油站能够恢复油灯的照明力,找到地图右下角的终点(绿色圆角矩形)。就算过关。

游戏采用图块(N * N 的正方形)的方式构建地图,且墙壁,地面,玩家,终点采用四个独立的函数绘制,如果想改变地图的风格,只需要修改这些函数的内容即可。

运行效果如下:

迷宫生成采用的深度优先算法,有明显的主路。

完整的游戏源代码如下:

//////////////////////////////////////////////
// 程序名称:迷宫
// 程序作者:祝融
// 作者邮箱:211103376@qq.com
// 编译环境:Visual Studio 2017 + EasyX 20180727(beta)
// 发布时间:2019
...

2D 赛车游戏(by 极品史莱姆)

一、关于本程序
看到吧里没有人写过赛车游戏,于是我就心血来潮写了一个了
顺便在这个程序里用上几个最近学习和思考的成果
也顺便复习了一下物理和数学

二、如何建立一个地图包
1. 选择赛车,音乐,地图的素材
2. 在程序的 map 文件夹下建立一个文件夹将这些素材放入
3. 建立 set.ini 文件
详情参考工程下的文件夹 a 和 b

三、关于碰撞图的绘制
1. 黄色(0xFFFF00)为沙地,会减速
2. 黑色(0xFFFFFF)为赛道,减速较小
3. 蓝色(0x0000FF)为冰面,会滑动
4. 红色(0xFF0000)为围栏,无法通过
5. 绿色(0xFFFFFF)为终点线
6. 灰色(0xAAAAAA)为终点线的两端,用于判定方向(终点线右侧)
7. 紫色(0xFF00FF)为玩家 2 起点
8. 白色(0x000000)为玩家 1 起点
*终点线最好为宽度为一的直线!!!

...

Rolling Ball(by Teternity)

这是经典的下 100 层游戏。>_<

通过鼠标左右键或者键盘 A、D 按键及左右方向键控制小球左右移动,木板会不断上升,小球到底认定游戏结束,按下键盘后小球会加速到一个最大速度,小球在木板上则会跟着木板上移,达到一定分数启动反向操作。

本程序采用单例设计模式,RollingBall 公有继承 BallAndPlank,protected 便于派生类访问基类数据成员。

木板的颜色随机,位置随机。

界面由初始化界面大小控制,可自行更改。

游戏运行截图如下:

游戏的完整源代码如下:

/*
	项目名称:
		RollingBall
	作者:
		tzdhu.z@qq.com (1926594835)
	编译环境:
		Visual Studio 2017,EasyX_20190219(beta)
	发布日期:
		2019-2-2
	最后修改:
...