失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > c语言——easyx实现飘雪花效果

c语言——easyx实现飘雪花效果

时间:2020-11-14 14:08:16

相关推荐

c语言——easyx实现飘雪花效果

首先,需要设定雪花在一个窗口中的总数目,这个关系到雪花的空间密度。

假定有20个雪花。就需要两个数组,分别为x[20] y[20]来分别记录x坐标和y坐标。通过自定义一个函数来初始化雪花的位置。这里需要用到随机数的相关知识。

其次,如果当雪花落下时,在雪花落的位置画一个雪花,模拟雪花残留在地面上。当雪花的y坐标达到画布上限时,令其为0,再重新初始化x坐标,即可实现雪花的连续随机飘落。下面是代码:

#include <graphics.h>#include <stdlib.h>#include <conio.h>#include <time.h>// 定义点的坐标数组int x[100];// 点的 x 坐标int y[100]; // 点的 y 坐标int i;void update_fall();int main(){srand( (unsigned)time(NULL) );initgraph(640, 480);update_fall();while(!_kbhit()){for(i = 0; i < 20; i++){// 擦掉前一个点setcolor(BLACK);setfillcolor(BLACK);fillcircle(x[i],y[i],5);// 计算新坐标y[i] += 3;if (y[i]>= 480){setcolor(WHITE); //在落地位置画雪花setfillcolor(WHITE);fillcircle(x[i],y[i],5);y[i]=0; //重新初始化雪花的位置x[i]=rand() % 640;}setcolor(WHITE); //在新位置画雪花setfillcolor(WHITE);fillcircle(x[i],y[i],5);}Sleep(10);}closegraph();return 0;}void update_fall(){for (i = 0; i < 20; i++){x[i] = rand() % 640;y[i] = rand() % 480;}}

如果觉得《c语言——easyx实现飘雪花效果》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。