怎样用C语言编写心形?
我说的是用TC中的DOS图形编程谢谢大家的支持啊!
#include"stdio.h"
#include"graphics.h"
main()
{
int driver=VGA;
int mode=VGAHI;
int i;
initgraph(&driver,&mode," ");
setbkcolor(0);
setcolor(12);
arc(240,100,0,180,80);
arc(400,100,0,180,80);
ellipse(320,100,180,360,160,180);
for(i=0;i<=15;i++)
setlinestyle(3,0,1);
setfillstyle(0,i);
floodfill(240,80,12);
}
getch();
closegraph();
}
这是我写的,我不太满意!不知道还需要加点啥可以更好看! 展开
用C语言编写心形的方法:
#include<stdio.h>
int n;
void draw(int n)
{
int i,j;
for (i=1-(n>>1);i<=n;i++)
if (i>=0)
{
for (j=0;j<i;j++) printf(" ");
for (j=1;j<=2*(n-i)+1;j++) printf(" *");
printf("\n");
}
else
{
for (j=i;j<0;j++) printf(" ");
for (j=1;j<=n+2*i+1;j++) printf(" *");
for (j=1;j<=-1-2*i;j++) printf(" ");
for (j=1;j<=n+2*i+1;j++) printf(" *");
printf("\n");
}
}
int main()
{
printf("Please input the size (n>=4):");
scanf("%d",&n);
draw(n);
return 0;
}
扩展资料
C程序是由一组变量或是函数的外部对象组成的。 函数是一个自我包含的完成一定相关功能的执行代码段。我们可以把函数看成一个“黑盒子”,你只要将数据送进去就能得到结果,而函数内部究竟是如何工作的,外部程序是不知道的。
外部程序所知道的仅限于输入给函数什么以及函数输出什么。函数提供了编制程序的手段,使之容易读、写、理解、排除错误、修改和维护。
参考资料:百度百科--c语音
我一直主张用最简单的方式去实现最复杂的程序
你直接定义一个数组,存放这个心形的图案,然后将其按行打印出来就可以了
float r,R=9;
float n=10*3.14/180,x,y;
int i;
initgraph(&a,&b,"");
circle(200,300,R);
for(i=0;i<36;i++)
{x=200+R*cos(i*n);
y=300+R*sin(i*n);
r=sqrt((x0-x)^2+(y0-y)^2);/*x0,y0为R圆上的一定点*/
circle(x0,y0,r);
}
closegraph();
#include<stdio.h>
int n;
void draw(int n)
{
int i,j;
for (i=1-(n>>1);i<=n;i++)
if (i>=0)
{
for (j=0;j<i;j++) printf(" ");
for (j=1;j<=2*(n-i)+1;j++) printf(" *");
printf("\n");
}
else
{
for (j=i;j<0;j++) printf(" ");
for (j=1;j<=n+2*i+1;j++) printf(" *");
for (j=1;j<=-1-2*i;j++) printf(" ");
for (j=1;j<=n+2*i+1;j++) printf(" *");
printf("\n");
}
}
int main()
{
printf("Please input the size (n>=4):");
scanf("%d",&n);
draw(n);
return 0;
}