- 1、本文档共9页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C语言课程设计-雪花飞扬
计算机技术基础课程设计
C语言
设计报告
题目:雪花飞扬
学院:工商管理学院
专业:信息管理与信息系统
班级:050507班
姓名:王勍
指导教师:张守伟
设计日期:2006年12月19日
选题背景:
冬天已经来临,纷纷扬扬的下了几场不大的雪,而且圣诞节很快就要到了,往往需要一些动画来装点生活,为此根据C语言的一些知识点特创建了一个小程序,设计了一个美观的雪花背景图,此程序富有观赏性。
设计思想:
通过学过的一些C语言的知识编译简单的雪花飘落和星星闪烁的过程。
设计思路:首先在程序开始处,开通语句“includestdlib.h,includegraphics.h”引入头文件,定义了星星和雪花的机构体,对雪花和星星的数据进行定义。然后用Init函数对雪花的效果进行设计。对屏幕的颜色、字体进行编辑并保存。对雪花的速度和坐标都是随机的。
在所设计的页面中输入任何一个键就会进入下一个页面,然后用up和down进行选择,会进入一个新页面,按任何一个键,结束此程序。
主要解决问题的方法及技术关键:
用if语句来控制程序的循环,应用到了双链表,冒泡排序,基数排序,二叉树排序等知识点,来实现对程序的设计。此程序主要解决的是使用Init函数进行设计,同时掌握结构体的一些相关知识。应用图形驱动,做出生动的画面,用 sx[]规定星星、雪花和图形界面底坐标。做出的图形有随机性,大大加强了美观性。
程序流程图:
程序清单:
#includestdlib.h
#includegraphics.h
#define ESC 0x011b /*键的扫描码*/
#define ENTER 0x1c0d /*键的扫描码*/
#define DOWN 0x5000 /*键的扫描码*/
#define UP 0x4800 /*键的扫描码*/
struct Snow/*雪的一些参数*/
{
int x; /*雪花的横坐标*/
int y; /*雪花的纵坐标*/
int speed;/*雪花的速度*/
}snow[100]; /*定义由100个雪花组成的数组*/
struct Star/*星星的一些参数*/
{
int x; /*星星的横坐标*/
int y; /*星星的纵坐标*/
int color; /*星星的颜色*/
}star[200]; /*定义由200个星星的数组*/
int key;/*按键变量*/
int keyx,keyy;/*选项键的坐标*/
int snownum=0;/*雪的个数*/
int size;/*保存区域的大小*/
int change=10;/*变颜色有关*/
void *save1,*save2;/*保存空间*/
void Copy(void);/*保存区域*/
void DrawSnow(void);/*具体实现*/
void Pr(void);/*输出字体*/
void Choose(void);/*选择演示内容*/
void DrawStar(void);/*最后的星星效果*/
void DrawBall(int x,int y,int color);/*画选择的球体*/
void Init(void);/*图形驱动*/
void Close(void);/*图形关闭*/
void main(void) /*主函数*/
{
Init(); /*初始化*/
Copy(); /*保存区域*/
DrawSnow();/*雪花飘动*/
Choose();/*选择演示内容*/
DrawStar();/*结束画面*/
Close(); /*关闭画面*/
exit(0); /*退出程序*/
}
void Init(void) /*初始化定义*/
{
int gd=DETECT,gm;/*图形驱动器gdrive;图形驱动模式gmode*/
initgraph(gd,gm,c:\\tc);/*驱动程序路径*/
cleardevice(); /*清屏*/
}
void Close(void)/*图形关闭*/
{
getch(); /*c语言输出必备函数*/
closegraph(); /*关闭画面*/
}
void Copy(void)/*保存区域*/
{
setcolor(0); /*初始颜色我黑色*/
setfillstyle(SOLID_FILL,15); /*设置填充的颜色*/
fillellipse(200,200,4,4);/*雪花的坐标和大小颜色*/
size=imagesiz
您可能关注的文档
- 000778 新兴铸管 球墨铸铁管行业钢铁行业城镇供水行业燃气管网行业.doc
- 002071 江苏宏宝 工具行业五金行业厨房用具行业.doc
- 000703 恒逸石化 PTA行业聚酯纤维行业己内酰胺行业.doc
- 002101 广东鸿图 铝合金压铸行业汽车轻合金行业.doc
- 002124 天邦股份 水产饲料行业水产品行业.doc
- 002406 远东传动 传动轴行业非等速传动轴行业.ppt
- 002472 齿轮行业的 双环传动.doc
- 002281 光迅科技 光电子器件行业光通信器件行业光纤通信行业.doc
- 021410100453徐辉《l论我国“制造业”库存管理的现状及其改善措施》.doc
- 02质量管理文件回收、销毁登记簿.doc
文档评论(0)