C语⾔⽤递归函数画雪花
1. 运⾏环境visual studio 2013
2. ⽤到了easyx图形库
//画雪花;
递归函数c语言规则#include<stdio.h>
#include<stdlib.h>
#include<easyx.h>
#include<Windows.h>
void drawsnow(int x,int y,float w,int depth,int step)
{
if(w<=1||depth>=step)
{
setfillcolor(RGB(0x99,0xCC,0xFF));//设置填充颜⾊
setlinecolor(RGB(0x99,0xCC,0xFF));//设置当前画线颜⾊
fillrectangle(x, y, x +max(w,1), y +max(w,1));//⽤于画填充雪花
return;
}
float a = w /3;
drawsnow(x + a, y, a, depth +1,step);
drawsnow(x, y + a, a, depth +1,step);
drawsnow(x + a, y + a, a, depth +1,step);
drawsnow(x +2* a, y + a, a, depth +1,step);
drawsnow(x + a, y +2* a, a, depth +1,step);
}
int main()
{
int cwd =600;
initgraph(cwd, cwd);
int step =0;
int n =5;
for(step =0; step <= n; step++)//递归实现画雪花的渐变过程
{
drawsnow(0,0, cwd,0, step);
Sleep(2000);
if(step == n)break;
clearrectangle(0,0, cwd, cwd);
}
system("pause");
closegraph();
return0;
}
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论