C语言实现打印出心形,初学者的表白神器。
这道题分4部分,前3行一部分,4-6行一部分,7-13行一部分,最后一行一部分。
前三行输出,为了让初学者知道,即使最笨的方法也是可以打印的。
4-6行,这三行输出效果一样。
for(i=0;i<3;i++)
{
for(j=0;j<29;j++)
{
printf("*");
}
printf("\n");
}
最后一行,只是输出一个*。
for(i=0;i<14;i++)
{
printf(" ");
}
printf("*\n");
源代码演示
前三行代码样式请参考上述截图
#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语言入门大礼包、各种C语言C++学习资料的小伙伴可以加入小编的学习圈,里面聚集了一些正在学习C语言的小伙伴,在学习C语言的过程中遇到任何的问题,大家都可以一起交流,大家可以根据自己需要领取源码素材。希望大家都能够实现自己的梦想,加油!大家可以根据自己需要领取源码素材!
点击链接加入群聊点击链接加入群聊【C语言/C++学习交流群】:https://jq.qq.com/?_wv=1027&k=nZCIuINR