C语言编程-输出心形图案

这篇具有很好参考价值的文章主要介绍了C语言编程-输出心形图案。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

方法1:for循环输出图案

方法2:使用心形公式

使用pow()函数修改程序

方法3:使用心形公式


方法1:for循环输出图案

#include<stdio.h> 
#include<stdlib.h>
int main()
{
	int i,j;
	//开头空5行 
	for(i=1;i<=5;i++)
		printf("\n");
	//前三行 
	for(i=1;i<=3;i++)
	{
		for(j=1;j<=17-2*i;j++)
			printf(" ");
		for(j=1;j<=4*i+1 ;j++)
			printf("*");
		for(j=1;j<=13-4*i;j++)
			printf(" ");
		for(j=1;j<=4*i+1 ;j++)
			printf("*");
		printf("\n");	
	}
	//中间3行输出29颗星 
	for(i=1;i<=3;i++)
	{
		for(j=1;j<=10;j++)
			printf(" ");
		for(j=1;j<=29;j++)
			printf("*");
		printf("\n");
	}
	//下7行 倒三角造型 
	for(i=1;i<=7;i++)	
	{
		
		for(j=1;j<=2*i-1+10;j++)
			printf(" ");
		for(j=1;j<=31-4*i;j++)
			printf("*");
		printf("\n");
	}
	//图案最后一行一颗星 
	for(i=1;i<=14+10;i++)
		printf(" ");
	printf("*");
	//下方空5行 
	for(i=1;i<=5;i++)
		printf("\n");
	system("color 0c"); 	         //修改系统色,前景色为c红色,背景色为0黑色。 
	return 0;
}

方法1补充:符号的输出可以用printf()实现也可以用putchar()实现,构成图案的符号可以试着用字符型变量代替,看官可以自行修改。

方法2:使用心形公式

 实现代码

#include<stdio.h>
#include<stdlib.h>
int main()
{	float x,y,a;	
	for(y=1.5;y>-1.5;y-=0.1)	
	{		
		for(x=-1.5;x<1.5;x+=0.05)		
		{			
			a=x*x+y*y-1;			
			if(a*a*a-x*x*y*y*y<=0.0)				
				putchar('*');			
			else				
				putchar(' ');		
		}		
		system("color 0c");		
		putchar('\n'); 
	}
		return 0;
}

使用pow()函数修改程序

#include<stdio.h>
#include<stdlib.h>
#include<math.h> 
int main()
{	float x,y,a;	
	for(y=1.5;y>-1.5;y-=0.1)	
	{		
		for(x=-1.5;x<1.5;x+=0.05)		
		{			
			if(pow((x*x+y*y-1),3)-pow(x,2)*pow(y,3)<=0.0)				
				putchar('*');			
			else				
				putchar(' ');		
		}		
		system("color 0c");		
		putchar('\n'); 
	}
		return 0;
}

效果

c语言输出爱心,c++,算法,开发语言 

 

方法3:使用心形公式

 c语言输出爱心,c++,算法,开发语言

 实现代码

#include<stdio.h>
#include<stdlib.h>
#include<math.h> 
int main()
{	float x,y,a;	
	for(y=1.5;y>-1.5;y-=0.1)	
	{		
		for(x=-1.5;x<1.5;x+=0.05)		
		{			
			if((pow(x,2)+pow(5.0*y/4.0-sqrt(fabs(x)),2))<=1)								putchar('*');			
			else				
				putchar(' ');		
		}		
		system("color 0c");		
		putchar('\n'); 
	}
		return 0;
}

效果图

c语言输出爱心,c++,算法,开发语言

 扩展

用 system("color 0A")更改颜色; 其中color后面的0是背景色代号,A是前景色代号。各颜色代码分别是:0=黑色 1=蓝色 2=绿色 3=湖蓝色 4=红色 5=紫色 6=黄色 7=白色 8=灰色 9=亮蓝色 A=亮绿色 B=亮湖蓝色 C=亮红色 D=亮紫色 E=亮黄色 F=亮白色文章来源地址https://www.toymoban.com/news/detail-613522.html

到了这里,关于C语言编程-输出心形图案的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 掌握Go语言:Go语言递归函数,解密编程之谜,探索算法的奥秘!(27)

    递归函数是指在函数内部调用自身的函数。在Go语言中,递归函数使用起来非常方便,但需要注意递归的终止条件,以避免无限循环。 Go语言递归函数的使用方法 在Go语言中,编写递归函数的基本步骤如下: 上述三点内容详细解释如下: 定义一个函数,函数内部调用自身 :

    2024年04月15日
    浏览(50)
  • Ubuntu22.2下C语言编程实现,首次,最佳适应算法

    编写C语言程序,模拟实现首次/最佳/最坏适应算法(选择其中之一即可)的内存块分配和回收,要求每次分配和回收后显示出空闲分区和已分配分区的情况。假设初始状态下,可用的内存空间为640KB。 假设下列作业请求序列: (1)作业1 申请130 KB (2)作业2 申请60 KB (3)作业

    2024年02月05日
    浏览(43)
  • 【C语言】C语言编程实战:Base64编解码算法从理论到实现(附完整代码)

    🧑 作者简介 :阿里巴巴嵌入式技术专家,深耕嵌入式+人工智能领域,具备多年的嵌入式硬件产品研发管理经验。 📒 博客介绍 :分享嵌入式开发领域的相关知识、经验、思考和感悟,欢迎关注。提供嵌入式方向的学习指导、简历面试辅导、技术架构设计优化、开发外包等服

    2024年03月13日
    浏览(37)
  • C语言:从键盘任意输入a,b,c的值,编程计算并输出一元二次方程ax2+bx+c=0的根

    C语言实战题目:【if-else条件分支语句】 从键盘任意输入a,b,c的值,编程计算并输出一元二次方程ax2+bx+c=0的根,当a=0时,输出“该方程不是一元二次方程”,当a≠0时,分b2−4ac0、b2−4ac=0、b2−4ac0三种情况计算并输出方程的根。 **输入格式要求:\\\"%f,%f,%f\\\" 提示信息:“Ple

    2023年04月26日
    浏览(67)
  • 算法初阶双指针+C语言期末考试之编程题加强训练

    常⻅的双指针有两种形式,⼀种是对撞指针,⼀种是左右指针。 对撞指针:⼀般⽤于顺序结构中,也称左右指针。 • 对撞指针从两端向中间移动。⼀个指针从最左端开始,另⼀个从最右端开始,然后逐渐往中间逼 近。 • 对撞指针的终⽌条件⼀般是两个指针相遇或者错开(

    2024年02月05日
    浏览(48)
  • 设银行定期存款的年利率rate为2.25%,已知存款年限为n年,存款本金为capital元,试编程以复利方式计算并输出n年后的本利之和deposit.(c语言)

    复利公式为:F=P* (1+i)^n,其中F为本利之和,P为本金,i为利率,n为存款期,则由公式可知: 结果如图:  

    2024年02月06日
    浏览(43)
  • GO编程语言:简洁、高效、强大的开源编程语言

    在现代软件开发领域,随着应用复杂度的不断提升,开发人员对编程语言的需求也日益增长。GO编程语言,作为一种简洁、高效且具备强大并发能力的新型开源编程语言,逐渐成为了许多开发者的首选。本文将详细介绍GO语言在哪些项目开发中表现出色,以及为什么许多开发者

    2024年02月02日
    浏览(96)
  • 【编程】C++语言编程规范-2

    结合C++ Effective系列参考树、尤其是工程经验教训的总结。 并发 除非必要,尽量少用线程。 多线程编程要守护好内存,使用atomic、mutex、condition variable、future、semaphore、latch、barrier等同步机制避免数据竞争。 尽量缩小临界区,临界区指独占的资源,禁止其他线程访问变量的代

    2024年02月21日
    浏览(50)
  • Go语言网络编程(socket编程)WebSocket编程

    WebSocket是一种在单个TCP连接上进行全双工通信的协议 WebSocket使得客户端和服务器之间的数据交换变得更加简单,允许服务端主动向客户端推送数据 在WebSocket API中,浏览器和服务器只需要完成一次握手,两者之间就直接可以创建持久性的连接,并进行双向数据传输 需要安装第

    2024年02月09日
    浏览(71)
  • Go语言网络编程(socket编程)http编程

    Web服务器的工作原理可以简单地归纳为 客户机通过TCP/IP协议建立到服务器的TCP连接 客户端向服务器发送HTTP协议请求包,请求服务器里的资源文档 服务器向客户机发送HTTP协议应答包,如果请求的资源包含有动态语言的内容,那么服务器会调用动态语言的解释引擎负责处理“

    2024年02月09日
    浏览(65)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包