c语言for循环流程图例题(C语言小试牛刀C语言画爱心)

先上图片,怎么样还行吧,这个是用VScode做的,我尝试过用VC6.0,用过vscode才知道真香。大家有兴趣,下次我更新一下如何部署vscode[呲牙]。

c语言for循环流程图例题(C语言小试牛刀C语言画爱心)(1)

心形图

c语言for循环流程图例题(C语言小试牛刀C语言画爱心)(2)

心形程序代码

其实,刚开始学习,我们还是需要这种跟软件或者代码互动的过程

来加强我们对程序代码的理解和应用

后续详细介绍代码含义

第一段:

#include <stdio.h> //先加载头文件,头文件,我个人理解是,先让程序进程读取有多种工具库的一个文件集合

int main(viod) //main函数,是所有程序运行的入口

{ //花括号代表函数的程序内容

第二段:

for (float y = 1.5f; y > -1.5f; y -=0.1f)

/*for循环,假设for(a,b,c),那么a代表参数初始化的数值,b代表循环判断的条件,众所周知for循环在不断运行过程中不断重复,如何没有循环判读的条件,那么程序或者计算机就会陷入死循环,c则是每次循环过程的参数变化条件*/

/*

以此for循环为例for (float y = 1.5f; y > -1.5f; y -=0.1f)

圆括号内的第一个语句是:float y = 1.5f;这里是定义一个参数y,y是float类型的数据,单精度浮点数,浮点数有如下表格这几种,注意定义方法有所不同

这个是双精度浮点数定义:double varname = value;有没有观察到不同呢?数字后面没有字符哦。

类型

比特(位)数

有效数字

数值范围

float

32

6~7

-3.4*10^38~ 3.4*10^38

double

64

15~16

-1.7*10^-308~1.7*10^308

long double

128/

18~19

-1.2*10^-4932~1.2*10^4932

y > -1.5f;这句代表是for循环的判断条件,当y大于-1.5时,循环继续。

y -=0.1f,这一句是每次循环,参数y自动变化规律,我们可以这样理解这句话:y=y-0.1

也就是说,当每次循环后,y-0.1后,将最新y的数值保存在y的存储单元内,此时y值已经更新了,是不是很巧妙的写法呀。

第三段:

for (float x = -1.5f; x < 1.5f; x =0.05f)

类似for循环的内容,但这个for循环是上一个for循环的循环体内容;

关键内容来了!

此时定义了一个float a =x*x y*y-1;

putchar(a*a*a-x*x*y*y*y<=0.0f ? 'x':' ');

这个是什么意思呢?

我们可以这样看

(x^{2} y^{2}-1)^{3}<=x^{2}*y^{3},这个就是心形图的方程

或者:

x=a*(2*cos(t)-cos(2*t));y=a*(2*sin(t)-sin(2*t));

用程序表达出来,就是将putchar(a*a*a-x*x*y*y*y<=0.0f ? 'x':' ');心形区域内的位置用X填充出来,其实y与x的参数循环控制条件,就是设定图形范围,而for循环的参数循环变化规则是控制心形填充的行数和列数,这下明白了吧?

假如我们将x =0.04f,改为x =0.1f,图形变为如下形状:

是不是很有趣呀?

c语言for循环流程图例题(C语言小试牛刀C语言画爱心)(3)

x =0.1f后图形的变化

大家多多尝试,改变一下参数,很有意思[呲牙]

#include <stdio.h>

int main(viod)

{

for (float y = 1.5f; y > -1.5f; y -=0.1f) //循环注释

{

for (float x = -1.5f; x < 1.5f; x =0.04f)

{

float a = x*x y*y-1;

putchar(a*a*a-x*x*y*y*y<=0.0f ? 'x':' ');

}

putchar('\n');

}

}

代码源自:https://blog.csdn.net/weixin_43772166/article/details/101720728

,

免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com

    分享
    投诉
    首页