简单屏幕烟花程序2

  • 格式:doc
  • 大小:14.00 KB
  • 文档页数:2

/*
----------------------------------------------------------
《简单屏幕烟花程序2》
作者:王红波
本程序由来:另一位作者在C源码网站上发表一篇《简单屏幕烟花程序》,他的程序运行后,烟花形状为菱形,他希望烟花的形状变为圆形。

所以按此要求我写了一个新的程序,暂且命名为《简单屏幕烟花程序2》。

本程序介绍:
天空颜色设置为黑色,每个烟花颜色随机;
从屏幕中随机选取一点P1作为烟花中心点,
设置相对坐标x,y和半径r,循环r值使烟花散开;
如果您对此程序程序感兴趣,
欢迎传播和修改;您可以通过
email:biowhb& 联系我(&换成@);
请将修改后的程序发我一份,谢谢!
----------------------------------------------------------
*/
#include "math.h"
#include "conio.h"
#include "stdio.h"
#include "stdlib.h"
#include "graphics.h"
main()
{
int gd=DETECT,gr,color; //color为烟花颜色;
struct pointtype P1; //烟花中心点;
double x,y,r; //相对x,y值,r为烟花半径;
initgraph(&gd,&gr,"");
randomize();
r=100; //烟花半径为100,也可随机;
setbkcolor(0); //设置背景为黑色;
for(;!kbhit();)
{
P1.x=rand()%240+200; //烟花中心点坐标x值;
P1.y=rand()%240+100; //烟花中心点坐标y值;
color=rand()%15+1; //随机颜色(1-15);
for(r=3;r<=100;r++)
{
for(x=0;x<r;x+=3)
{
y=sqrt(r*r-x*x);
putpixel(P1.x+x,P1.y-y,color);
putpixel(P1.x+x,P1.y+y,color);
putpixel(P1.x-x,P1.y-y,color);
putpixel(P1.x-x,P1.y+y,color);
putpixel(P1.x+y,P1.y-x,color);
putpixel(P1.x+y,P1.y+x,color);
putpixel(P1.x-y,P1.y-x,color);
putpixel(P1.x-y,P1.y+x,color); }
delay(1000);
cleardevice();
}
}
getch();
closegraph();
}。