原始的心形线的极坐标方程为:r=a(1-cosθ),有多种变化的情形,如:
创新互联服务项目包括丘北网站建设、丘北网站制作、丘北网页制作以及丘北网络营销策划等。多年来,我们专注于互联网行业,利用自身积累的技术优势、行业经验、深度合作伙伴关系等,向广大中小型企业、政府机构等提供互联网行业的解决方案,丘北网站推广取得了明显的社会效益与经济效益。目前,我们服务的客户以成都为中心已经辐射到丘北省份的部分城市,未来相信会继续扩大服务区域并继续获得客户的支持与信任!
看起来心形效果更好的一种方式用直角坐标表示是:
程序的截图看不清具体细节,估计是按照这个公式做的计算:
对给定的一组(x,y)做循环,按如上公式计算:
a = x*x + y*y -1;
f = a*a*a - x*x*y*y*y;
如果f0,代表(x,y)在心形内,显示一个标记;
如果f0,代表(x,y)在心形外,显示空白,或者不显示。
可以通过循环语句和预先定义的图形模板来实现自定义的图形。
具体实现方法可以参考如下程序:
#include
#define width 9 // 宽也即列数
#define height 7 // 高也即行数
#define char "*"
int modal[height][width]= // 定义形状的模板
{
{0,1,1,1,0,1,1,1,0},
{1,0,0,0,1,0,0,0,1},
{1,0,0,0,0,0,0,0,1},
{0,1,0,0,0,0,0,1,0},
{0,0,1,0,0,0,1,0,0},
{0,0,0,1,0,1,0,0,0},
{0,0,0,0,1,0,0,0,0}
};
void main()
{
int i,j;
for(i=0;i
评论
加载更多
方法一:
#includestdio.h
int n;
void draw(int n)
{
int i,j;
for (i=1-(n1);i=n;i++)
if (i=0)
{
for (j=0;ji;j++) printf(" ");
for (j=1;j=2*(n-i)+1;j++) printf(" *");
printf("\n");
}
else
{
for (j=i;j0;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;
}
方法二:
int a=DETECT,b;
float r,R=9;
float n=10*3.14/180,x,y;
int i;
initgraph(a,b,"");
circle(200,300,R);
for(i=0;i36;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 main(void)
{
float a,x,y;
for(y=1.5f; y-1.5f; y-=0.1f)
{
for(x=-1.5f; x1.5f; x+=0.05f)
{
a = x*x+y*y-1;
char ch = a*a*a-x*x*y*y*y=0.0f?'*':' ';
putchar(ch);
}
printf("\n");
}
return 0;
}
扩展资料:
书写规则
1、一个说明或一个语句占一行。
2、用{} 括起来的部分,通常表示了程序的某一层次结构。{}一般与该结构语句的第一个字母对齐,并单独占一行。
3、低一层次的语句或说明可比高一层次的语句或说明缩进若干格后书写。以便看起来更加清晰,增加程序的可读性。在编程时应力求遵循这些规则,以养成良好的编程风格。
参考资料:
百度百科-c语言