逐行分析如何用C语言输出心形图案
相信你看完之后,会有收获的!
首先我先在每行代码上标上序号 (已自动标志)
#include<stdio.h> int main() { float a,x,y; for(y=1.5f; y>-1.5f; y-=0.1f) { for(x=-1.5f; x<1.5f; x+=0.05f) { a = x*x+y*y-1; //*符号为打印出的心形图案符号,可自行更改 此处为12行的注释 char c = a*a*a-x*x*y*y*y<=0.0f?'*':' '; putchar(c); } printf("\n"); } return 0; }
然后开始逐行分析:
1. 头文件的定义,此处为非常常用的头文件stdio
2. 空 为了整体的观感
3. 主函数定义
4. 主函数语句块儿括号
5. a,x,y定义为float(单精度浮点型)类型
6. y=1.5f 1.5后面的f用于强调前面的1.5是一个float量。 如果不加,默认为double,加了之后,赋值给y时会自动转换为float 的。
y>-1.5f 判断条件
y-=0.1f 也就是y=y-0.1f 可以类比i-=2 即 i=i-2
7. for循环语句块儿括号
8. x=-1.5f; x<1.5f; x+=0.05f 与6同理.
9. for循环语句块儿括号
10. 10和12其实是一个心形图案(平面)的方程函数
a = x * x+y * y - 1; c = a * a * a - x * x * y * y * y; //c的结果如果小于等于0,则正常打印,如果大于0输出空格
11. 注释
12. 见10.
13. 输出字符
14. 同2
15. 换行
16. 同2
17. return 0; return语句结束main()函数的执行,把0返还给操作系统。
18. 主函数语句块儿括号
希望这篇文章对你有所帮助!
作者:Code_流苏
如有误,还请指出!创作不易,喜欢的话,还请多多点赞与关注!
感谢支持!如有不懂,欢迎评论交流学习!