例20:C语言实现打印出心形
【摘要】 例20:C语言实现打印出心形,初学者的表白神器。解题思路:这道例题我分了4部分,前3行一部分,4-6行一部分,7-13行一部分,最后一行一部分,读者请仔细阅读注释,小林写的很详细了。前三行输出,为了让初学者知道,即使最笨的方法也是可以打印的。源代码演示,前三行代码样式请文末,文章中的源码空格有点小bug:#include<stdio.h>//头文件
int main()//主...
例20:C语言实现打印出心形,初学者的表白神器。
解题思路:这道例题我分了4部分,前3行一部分,4-6行一部分,7-13行一部分,最后一行一部分,读者请仔细阅读注释,小林写的很详细了。
前三行输出,为了让初学者知道,即使最笨的方法也是可以打印的。
源代码演示,前三行代码样式请文末,文章中的源码空格有点小bug:
#include<stdio.h>//头文件
int main()//主函数入口
{
printf(" **** ****\n");//打印第一行 printf(" ********* *********\n");//打印第二行 printf("************* *************\n");//打印第三行 int i,j;//定义变量 for(i=0;i<3;i++)//打印4-6行,一共3行,因此i小于3 { for(j=0;j<29;j++)//限制每行输出*的个数 { printf("*");//这三行只打印*号,无空格输出 } printf("\n");//打印完一行需要进行换行 } for(i=0;i<7;i++) //打印7-13行,一共7行,因此i小于7 { for(j=0;j<2*(i+1)-1;j++)//这个for循环和下面的for是并列的 { printf(" ");//打印空格 } for(j=0;j<27-i*4;j++)//读者可以带入几个数找出条件 { printf("*");//打印* } printf("\n"); }
for(i=0;i<14;i++)//打印最后一行的*
{ printf(" ");//打印空格 } printf("*\n") ;//打印*
return 0;
}
上述代码中的*,读者可以自行替换,读者可以用这个符号替换试试♥,看是否可行,自己动脑思考一下。
第二种表白源代码演示:
#include<stdio.h>//头文件
#include<math.h>//为了引用pow函数
int main()//主函数入口
{ float y, x, z;//定义浮点型变量 printf("独时想起你\n");//提示语句 printf("落泪时想搂住你\n");//提示语句 printf("开心时想扑向你\n");//提示语句 printf("兴奋时想吻你\n");//提示语句 printf("一切尽在这三个字签名没有签上\n");//提示语句 printf("\n");//换行 for (double y = 2.5; y >= -1.6; y = y - 0.2) { for (double x = -3; x <= 4.8; x = x + 0.1) { //下面是个三目运算,读者请仔细看下,||这个是或 (pow((x*x + y*y - 1), 3) <= 3.6*x*x*y*y*y || (x>-2.4 && x<-2.1 && y<1.5 && y>-1) || (((x<2.5 && x>2.2) || (x>3.4 && x<3.7)) && y>-1 && y<1.5) || (y>-1 && y<-0.6 && x<3.7 && x>2.2)) ? printf("*") : printf(" "); } printf("\n");//换行 } getchar(); return 0;//函数返回值为0
}
C语言打印出心形的方法有很多,读者可以自己多尝试尝试,即使一行一行用printf也是一种方式,小林能帮你的只能到这了,女朋友还是要自己找。
C语言 | 心形表白神器文章来源: zhuanlan.zhihu.com,作者:小林C语言,版权归原作者所有,如需转载,请联系作者。
原文链接:zhuanlan.zhihu.com/p/323349425
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)