非常多

这些代码能够完毕几个不同的爱心图案。当中有一个样例甚至能够在黑色背景的控制台上打印出跳动的3D爱心动画,效果相当震撼。

我用的是

普通的爱心图案

C语言代码:

#include "stdafx.h"

#include

#include

int main()

{

float y, x, a;

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;

putchar(a*a*a - x*x*y*y*y <= 0.0f ?

'*' : ' ');

}

putchar('

');

}

return 0;

}

效果图:

带花纹的爱心图案

C语言代码:

#include "stdafx.h"

#include

#include

int main()

{

float y, x, z,f;

for (y = 1.5f;y > -1.5f;y -= 0.1f)

{

for (x = -1.5f;x < 1.5f;x += 0.05f)

{

z = x*x + y*y - 1;

f = z*z*z - x*x*y*y*y;

putchar(f <= 0.0f ? ".:-=+*#%@"[(int)(f*-8.0f)] : ' ');

}

putchar('

');

}

getchar();

return 0;

}

效果图:

跳动的3D爱心图案

C语言代码:

#include "stdafx.h"

#include

#include

#include

#include

float f(float x, float y, float z) {

float a = x * x + 9.0f / 4.0f * y * y + z * z - 1;

return a * a * a - x * x * z * z * z - 9.0f / 80.0f * y * y * z * z * z;

}

float h(float x, float z) {

for (float y = 1.0f; y >= 0.0f; y -= 0.001f)

if (f(x, y, z) <= 0.0f)

return y;

return 0.0f;

}

int main() {

HANDLE o = GetStdHandle(STD_OUTPUT_HANDLE);

_TCHAR buffer[25][80] = { _T(' ') };

_TCHAR ramp[] = _T(".:-=+*#%@");

for (float t = 0.0f;; t += 0.1f) {

int sy = 0;

float s = sinf(t);

float a = s * s * s * s * 0.2f;

for (float z = 1.3f; z > -1.2f; z -= 0.1f) {

_TCHAR* p = &buffer[sy++][0];

float tz = z * (1.2f - a);

for (float x = -1.5f; x < 1.5f; x += 0.05f) {

float tx = x * (1.2f + a);

float v = f(tx, 0.0f, tz);

if (v <= 0.0f) {

float y0 = h(tx, tz);

float ny = 0.01f;

float nx = h(tx + ny, tz) - y0;

float nz = h(tx, tz + ny) - y0;

float nd = 1.0f / sqrtf(nx * nx + ny * ny + nz * nz);

float d = (nx + ny - nz) * nd * 0.5f + 0.5f;

*p++ = ramp[(int)(d * 5.0f)];

}

else

*p++ = ' ';

}

}

for (sy = 0; sy < 25; sy++) {

COORD coord = { 0, sy };

SetConsoleCursorPosition(o, coord);

WriteConsole(o, buffer[sy], 79, NULL, 0);

}

Sleep(33);

}

}

效果图

跳动的爱心动画须要你执行程序后才干够看到。

3d大爱心c语言程序,C语言控制台打印3D爱心图案相关推荐

  1. 插入法排序c语言程序,C语言之插入排序算法

    一.什么是直接插入算法? 直接插入排序是一种简单的插入排序法,其基本思想是:把待排序的纪录按其关键码值的大小逐个插入到一个已经排好序的有序序列中,直到所有的纪录插入完为止,得到一个新的有序序列. 选择 ...

  2. 框图c语言程序,C语言程序设计框图

    <C语言程序设计框图>由会员分享,可在线阅读,更多相关<C语言程序设计框图(86页珍藏版)>请在人人文库网上搜索. 1.第三章控制结构,返回总目录,目录,3.1节目结构框,3. ...

  3. 我的世界c语言程序,C语言基本知识

    软件是将一组程序组织起来 每个程序由一组指令组成 数据结构+算法 数据结构 在程序中要指定数据的类型和数据的组织形式. 算法(程序的灵魂) 就是为了解决实际问题而提出的具体方法与步骤. 算法的特点 有 ...

  4. 棱形旋转c语言程序_C 语言时隔 5 年重回巅峰,这 20 个热门项目拿去练手!

    在上个月的 TIOBE 编程语言排名中,C 语言和 Java 的差距只有 0.01%.在近日 TIOBE 公布的 2020 年 5 月编程语言排行榜中,C 语言成功超越了 Java,重返第一的王者宝座 ...

  5. 蜂鸣器发出7种音阶c语言程序_C语言编程新思路

    第一章 单元测试 1.单选题: 关于一个C语言程序执行的起点和终点,以下选项正确的是 ( ). 选项: A: main 任意 B: main 最后一个 C: main main D: 第一个 最后一个 ...

  6. 文件的记录c语言程序,c语言程序学生籍贯信息记录簿设计.docx

    c 语言程序学生籍贯信息记录簿设计 学生籍贯信息记录簿 课程设计报告书 班 级: 方 0909-1 学 号:姓 名: 苑 小 叶 指导教师 : 康 亚 男 石家庄铁道大学四方学院 2010年 07月 ...

  7. 学生实验平台搭建c语言程序,c语言程序设计实验学生用.doc

    c语言程序设计实验学生用 C语言程序设计 实验指导 (学生用) 计算机基础教研室 <C语言程序设计>课程组 2012年9月 前 言 <C语言程序设计>是计算机科学技术系面向全校 ...

  8. 优美图案c语言程序,C语言编程之一个最优美的图案

    问题描述:我使用C语言编程画出了一个优美的图案,大家可以将下面的源程序复制到VS中查看效果!!! 程序源码: #include "graphics.h" #include &quo ...

  9. 青花瓷音乐的单片机c语言程序,c语言曲谱_单片机c语言音乐简谱代码

    51单片机曲谱编写音乐程序,我看不懂曲谱,谁能教下我! //<世上只有妈妈好>51单片机C语言程序和音乐采灯程序 //此程序在硬件上调试通过 //本程序的单片机晶振采用11.0592MHZ ...

  10. 简单谱子C语言程序,c语言曲谱_单片机c语言音乐简谱代码

    51单片机曲谱编写音乐程序,我看不懂曲谱,谁能教下我! //<世上只有妈妈好>51单片机C语言程序和音乐采灯程序 //此程序在硬件上调试通过 //本程序的单片机晶振采用11.0592MHZ ...

最新文章

  1. 看完这一系列,彻底搞懂 Gradle
  2. macpro生成公钥并查看公钥
  3. java gc机制新区域旧屋_Java 内存回收机制——GC机制-Go语言中文社区
  4. java 转换为maven_Java工程转换为Maven工程
  5. Sutton 强化学习, 21 点游戏的策略蒙特卡洛值预测
  6. 37. 解决线程问题方式二(同步函数)
  7. Sql Server 时间格式
  8. 浙江工业大学校赛 XiaoWei的战斗力
  9. 关于深度探索C++对象模型笔记
  10. 拓端tecdat|R语言用多项式回归和ARIMA模型预测电力负荷时间序列数据
  11. 融创与泛海达成交易 获得京沪优质稀缺土地资源
  12. 求二次方程的根 b^2-4ac的三种可能
  13. 山东省计算机软件比赛,山东省大学生软件设计大赛报名通知
  14. android版幻灯片软件,手机幻灯片制作器
  15. 飞机大战之一:让背景先动起来
  16. c语言 运行经过八个翻译阶段,GitHub - BUAA-SE-Compiling/miniplc0-handbook: miniplc0 指导书...
  17. Squid缓存服务器和代理介绍
  18. ASP.Net邮件模板编辑与发送邮件的完美实现
  19. 解决 nginx 反向代理时的 upstream timeout 问题
  20. 一个老鼠走迷宫问题的python解法

热门文章

  1. css火狐 hover 图片会重新请求,在“unhovering”之后使CSS Hover状态保持不变
  2. afn原理 ios_iOS开发:AFN的基本使用
  3. matlab面向对象排序,MATLAB面向对象编程学习笔记(一)
  4. java转安卓快吗_安卓Kotlin开发系列之Java快速转Kotlin
  5. php 7编译 phar,编译安装php7
  6. c语言 求sin近似值,用泰勒公式求sin(x)的近似值
  7. hello world!!(Java)
  8. android shape 按钮背景_flutter好用的轮子推荐十三-flutter可展开选项的浮动按钮
  9. bzoj 1731 [Usaco2005 dec]Layout 排队布局——差分约束
  10. EXCEL 电子表格MID 返回值 不能用于计算的问题