c++打印心形_如何用 C 语言画「心形」?

原标题:如何用 C 语言画「心形」?

来源:知乎

www.zhihu.com/question/20187195

Kuuo

经大家的反馈我把原来的C版本代码改成了C++版本的代码

这次在MAC终端里用g++直接编译的,这是结果:

(MAC上好像显示不出爱心的辣个字符所以我用*替代了)

然后我直接把以前的C版本代码copy过来编译发现也没问题:

(只是把爱心的字符换成了*)

那么我就不造为什么你萌编译不了惹,可能是复制的时候没选全叭

======2015 11 30 更新=====

======2015 03 09=========

—————————————————

说明一下,

本人大一学生,刚学C语言。目前写的算法可能是有点暴力〒_〒

-------------------------------------------------------

我的这个爱心在搜狗输入法里的表情那里可以找到,是的我就是在那里先打出来然后照着写代码的

—————————————————

#include

intmain()

{

inti, j, k, l, m;

charc= 3; //ASCII码里面 3 就是一个字符小爱心

for(i= 1; i<= 5; i++) printf( " "); //开头空出5行

for(i= 1; i<= 3; i++) { //前3行中间有空隙分开来写

for(j= 1; j<= 32-2*i; j++) printf( " "); //左边的空格,每下一行左边的空格比上一行少2个 //8*n-2*i

for(k= 1; k<= 4*i+ 1; k++) printf( "%c", c); //输出左半部分字符小爱心

for(l= 1; l<= 13-4*i; l++) printf( " "); //中间的空格,每下一行的空格比上一行少4个

for(m= 1; m<= 4*i+ 1; m++) printf( "%c", c); //输出右半部分字符小爱心

printf( " "); //每一行输出完毕换行

}

for(i= 1; i<= 3; i++) { //下3行中间没有空格

for(j= 1; j<= 24+ 1; j++) printf( " "); //左边的空格 //8*(n-1)+1

for(k= 1; k<= 29; k++) printf( "%c", c); //输出字符小爱心

printf( " "); //每一行输出完毕换行

}

for(i= 7; i>= 1; i--) { //下7行

for(j= 1; j<= 40-2*i; j++) printf( " "); //左边的空格,每下一行左边的空格比上一行少2个//8*(n+1)-2*i

for(k= 1; k<= 4*i -1; k++) printf( "%c", c); //每下一行的字符小爱心比上一行少4个(这个循环是i--)

printf( " "); //每一行输出完毕换行

}

for(i= 1; i<= 39; i++) printf( " "); //最后一行左边的空格

printf( "%c ", c); //最后一个字符小爱心

for(i= 1; i<= 5; i++) printf( " "); //最后空出5行

return0;

}

匿名用户

刚学到malloc时弄的。。代码丢了。。

刘宇波

今天是情人节,嘿嘿。

尝试在心形图中填入文字,使用了两个心形曲线的方程:)

关于这个心形曲线方程,我在我的专栏上写了一个小教程,有兴趣的同学可以看一看:)

情人节,用C++画一个心:)

详细代码可以参考这个repo:liuyubobobo/heart-curve-cplusplus: This repo uses C++ to "draw" a heart shape in your command line. Happy Valentine's Day!

ycz

emmm,今天是情人节,其实已经有计划要实现这个问题许久了,一直没有时间完成…因为是情人节,所以我抽空完成了这颗心的绘制(๑ơ ₃ ơ)

⋯為什麼會覺得這顆心爛了呢( TДT)

這種仿製鑽石的割面不好看嘛( TДT)

(可視化一下世界法線⋯免得誤會我把這顆心寫爛了(T▽T)

使用c++和部分shader(spv),结合vulkan,绘制出来的,应该不算偏题吧(๑ơ ₃ ơ)ﻌﻌﻌ

渲染框架采用的是pathtracing,而渲染引擎使用的是鄙人写的一个小渲染器(其中的一个分支)

基本原理为求交,混合求交(解析解求交,和隐式表面求交,如距离场)

心形是使用了几个距离场复合而成(部分来自ShaderToy)

渲染材质使用了Lambert和GGX的Specular混合的半金属质感材质…

祝大家情人节快乐。

其次祝大家看到这个可爱的心心之后,会一直一直幸福下去*(*´∀`*)☆

看的人多一点再更新具体步骤ヾ(☆▽☆)

(点击标题可跳转阅读)返回搜狐,查看更多

责任编辑:

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值