扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
原始的心形线的极坐标方程为: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 stdio.h
int main()
{
int i,j;
printf(" ****** ******\n"
" ********** **********\n"
" ************* *************\n");
//前三排的规律性不强 所以直接显示就好了
for(i=0;i3;i++)//显示中间三排
{
for(j=0;j29;j++)
printf("*");
printf("\n");
}
for(i=0;i7;i++)//显示呈递减趋势规律的中间7排
{
for(j=0;j2*(i+1)-1;j++)
printf(" ");
for(j=0;j27-i*4;j++)
printf("*");
printf("\n");
}
for(i=0;i14;i++)//最后一个星号*与上面的规律脱节了 所以独立显示
printf(" ");
printf("*\n");
return 0;
}
C语言是一门通用计算机编程语言,应用广泛。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。
尽管C语言提供了许多低级处理的功能,但仍然保持着良好跨平台的特性,以一个标准规格写出的C语言程序可在许多电脑平台上进行编译,甚至包含一些嵌入式处理器(单片机或称MCU)以及超级电脑等作业平台。
用C语言编写心形的方法:
#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;
}
扩展资料
C程序是由一组变量或是函数的外部对象组成的。 函数是一个自我包含的完成一定相关功能的执行代码段。我们可以把函数看成一个“黑盒子”,你只要将数据送进去就能得到结果,而函数内部究竟是如何工作的,外部程序是不知道的。
外部程序所知道的仅限于输入给函数什么以及函数输出什么。函数提供了编制程序的手段,使之容易读、写、理解、排除错误、修改和维护。
参考资料:百度百科--c语音
方法一:
#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();
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流