分享代码 快乐编程

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

力学:模拟弹力的小程序(by frxyz1)

一个模拟弹力的小程序,执行效果如下:

感兴趣的可以再加上几个小球,类似的还可以模拟出绳子的效果。

以下是全部源代码:

///////////////////////////////////////////////////
// 程序名称:模拟弹力的小程序
// 编译环境:Visual C++ 6.0 / 2010,EasyX 20120404(beta)
// 作  者:frxyz1 <http://hi.baidu.com/frxyz1>
// 最后修改:2012-4-14
//
#include <graphics.h>
#include <conio.h>

#define BALL_RADIUS 30 // 小球的半径

void main()
{
	initgraph(640, 480);
	setfillstyle(RGB(255, 0, 0));

	// 小球的初始位置
	float ...

力学:流体(Liquid)(VC版本)

这个程序原本是测试 HTML 5 效果的一个演示程序,动态效果很是漂亮。现在,我把这个精彩的程序移植到了 VC 上。

以下是完整的 VC 源代码:

///////////////////////////////////////////////////
// 程序名称:流体(Liquid)
// 编译环境:Visual C++ 6.0 / 2010,EasyX 20120404(beta)
// 原 作 品:http://spielzeugz.de/html5/liquid-particles.html (HTML5)
// 移植作者:krissi <zh@easyx.cn>
// 最后修改:2012-4-5
//
#include <graphics.h>
#include <math.h>
#include <time.h>


#define WIDTH		1024		// 屏幕宽
#define HEIGHT		576			// 屏幕高
#d...

力学:弹跳球模拟程序

本程序根据物理原理模拟一个球自由落体并持续弹跳的效果,小球只受重力影响,忽略空气阻力,反弹时能量损耗 10%。

程序源代码如下:

////////////////////////////////////////////////////////////////////
// 程序名称:物理反弹球模拟程序
// 编译环境:VC6.0 / 2010,EasyX 2011惊蛰版
// 作  者:yw80@qq.com
// 最后修改:2012-3-29
//
#include <graphics.h>
#include <conio.h>

void main()
{
	double h = 300;				// 高度
	double v = 0;				// 速度(方向向下)
	double dv = 9.8 / 50;		// 加速度(每 1/50 秒)

	// 初始化绘图窗口
	initgraph(640, 480);

	// 画地平线
	line(100, 421, ...

黑白棋游戏(也叫翻转棋、奥赛罗棋)人机对战版(by 自然向日葵)

黑白棋(也叫翻转棋、奥赛罗棋)的棋盘是一个有8*8方格的棋盘。下棋时将棋下在空格中间,而不是像围棋一样下在交叉点上。开始时在棋盘正中有两白两黑四个棋子交叉放置,黑棋总是先下子。

下子的方法:把自己颜色的棋子放在棋盘的空格上,而当自己放下的棋子在横、竖、斜八个方向内有一个自己的棋子,则被夹在中间的全部翻转会成为自己的棋子。并且,只有在可以翻转棋子的地方才可以下子。

引用了QQ游戏黑白棋的图片。

游戏运行截图如下:

游戏中使用了大量图片、音乐、资源文件,<点这里下载该游戏的完整 VC 项目包>。

游戏代码如下(相关图片资源请下载完整 VC 项目包):

//////////////...

对对碰 游戏 (v2.2)(by 自然向日葵)

本程序的操作与 Popcap 经典的宝石迷阵(Bejeweled)游戏类似。游戏运行截图如下:

游戏中使用了大量图片、音乐、资源文件,<点这里下载该游戏的完整 VC 项目包>。

游戏代码如下(相关图片资源请下载完整 VC 项目包):

///////////////////////////////////////////////////////////
// 程序名称:对对碰
// 编译环境:Visual C++ 2010/6.0,EasyX_v20120304(beta)
// 程序编写:自然向日葵 1164359890@qq.com
// 最后更新:2012-3-10
//
////////////////////...

纪念披头士摇滚乐队(Beatles)的程序(VC 版本)

西班牙程序员 Roman Cortes 用纯 javascript 脚本编写了一个纪念披头士摇滚乐队(Beatles)的程序,动态效果很是漂亮。现在,这个精彩的程序经 krissi 移植到了 vc 上。以下是执行效果抓图(炫丽的动态效果还是需要您亲自编译才能看到):

完整的 VC 源代码如下:

////////////////////////////////////////////////////////////////////
// 程序名称:纪念披头士摇滚乐队(Beatles)
// 编译环境:VC6.0 / 2010,EasyX 2011惊蛰版
// 原 作 者:西班牙程序员 Roman Cortes
// 原 程 序:http://www.romancortes.com/blog/a-tribute-to-the-beatles/ (javascript 版本)
// 移植作者:krissi <zh@easyx.cn>
// 最后...

吃豆子游戏(PacMan)(by 水木淋溪)

经典的吃豆子游戏。

游戏运行截图如下:

游戏中使用了资源文件,<点这里下载该游戏的完整 VC 项目包>。

游戏主代码如下(相关图片资源请下载完整 VC 项目包):

///////////////////////////////////////////////////
// 程序名称:吃豆游戏
// 编译环境:Visual C++ 6.0 / 2010,EasyX 2011惊蛰版
// 作  者:水木淋溪 <577712541@qq.com>
// 最后修改:2012-3-3
// 注:此游戏我从网上看到的,觉得有意思,也比较简单
//     所以用自己的方式做了一下,其中部分代码有借鉴
//////...

情人节的红玫瑰

2012年2月14日情人节就要来临了,西班牙程序员 Roman Cortes 用纯 javascript 脚本编写了红色玫瑰花。

现在,我把这个精彩的程序移植到了 VC 上。以下是执行效果:

完整的 VC 源代码如下:

////////////////////////////////////////////////////////////////////
// 程序名称:情人节的玫瑰
// 编译环境:VC6.0 / VC2010,EasyX 2011惊蛰版
// 原 作 者:西班牙程序员 Roman Cortes
// 原 程 序:http://js1k.com/2012-love/demo/1022 (javascript 版本)
// 移植作者:krissi <zh@easyx.cn>
// 最后修改:2012-2-13
// 注:程序中的很多精简变量名都沿用原 javascript 中的变量名。
//
#include...

自创规则的军旗游戏(by shareli)

这是一款由 shareli 自创规则的军旗游戏,具体的游戏规则如下:

棋盘大小:6×6。
棋子总数:36。
敌对双方:红,蓝。
棋子类别:红棋(红方操作,14 个),蓝棋(蓝方操作,14 个),紫棋(功能棋,8 个)。
红棋(蓝棋)类型:司令,军长,师长,旅长,团长,营长,连长,班长,军旗,工兵×2,炸弹×2。
紫棋类型:地雷×4,变身棋×4。

【规则说明】
1. 司令最大,工兵最小,大的吃小的,一样就同归于尽,炸弹能炸紫棋和敌方除军旗外所有的棋(炸弹也会消失)。
2. 工兵可挖地雷,挖完后可扛对方棋变身(挖的雷越多,变成的人物越厉害)。
3. 人物棋可吃变,吃后能变成工兵~军长中的一种,有一定几率变成隐藏 BOSS。
4. 人物棋可自杀(算一次操作)。
5. 执棋方进行完一次有效操作后,就换对方执棋(边框颜色表当前执棋方)。
6. 一方棋子(军旗除外)全被消灭,就算输; 同时全部没有...

黑白棋游戏(也叫翻转棋、奥赛罗棋)双人对战版(by 自然向日葵)

经典的黑白棋游戏(也叫翻转棋、奥赛罗棋)。

这个程序实现了双人对战的功能。

以下是该游戏运行抓图:

由于项目包含很多图片,因此这里给出整个项目的压缩包:【点击下载】

以下是项目的全部源代码:

///////////////////////////////////////////////////////////
// 程序名称:黑白棋
// 编译环境:Visual C++ 2010/6.0,EasyX_2011惊蛰版
// 程序编写:自然向日葵 1164359890@qq.com
// 最后更新:2012-2-8
//
/////////////////////////////////////////////...