跳动的爱心

跳动的心形图案,通过字符打印和延时效果模拟跳动,心形在两种大小间交替跳动。

通过数学公式生成心形曲线

#include <stdio.h>

#include <windows.h> // Windows 系统头文件(用于延时和清屏)

void printHeart(int size, int beat) {

for (int y = size; y >= -size; y--) {

for (int x = -size; x <= size; x++) {

// 心形数学公式:(x² + y² - 1)³ - x²y³ ≤ 0(调整参数模拟跳动)

float fx = (x * 0.4f * beat) * (x * 0.4f * beat) + (y * 0.4f) * (y * 0.4f) - 1;

if (fx * fx * fx - (x * 0.4f * beat) * (y * 0.4f) * (y * 0.4f) * (y * 0.4f) <= 0) {

printf("@");

} else {

printf(" "); // 空格填充

}

}

printf("\n");

}

}

int main() {

int beat = 1; // 跳动幅度(1-2)

while (1) {

system("cls"); // 清屏(Linux/macOS 需改为 "clear")

printHeart(15, beat); // 绘制心形(尺寸15,幅度beat)

Sleep(100); // 延时100ms

beat = (beat == 1) ? 2 : 1; // 切换跳动幅度

}

return 0;

}

相关推荐
遇见尚硅谷4 小时前
C语言:游戏代码分享
c语言·开发语言·算法·游戏
Jess075 小时前
归并排序递归法和非递归法的简单简单介绍
c语言·算法·排序算法
双叶8366 小时前
(C++)STL标准库(vector动态数组)(list列表)(set集合)(map键值对)相关对比,基础教程
c语言·开发语言·数据结构·c++·list
j_xxx404_9 小时前
c语言:字符函数和字符串函数
c语言·开发语言
apocelipes10 小时前
C23和C++26的#embed嵌入资源指南
c语言·c++·开发工具和环境·c23·c++26
liweiweili12611 小时前
GPT和MBR分区
c语言
菜鸟12号11 小时前
详解Linux下多进程与多线程通信(一)
linux·c语言·嵌入式·进程与线程
学不动CV了12 小时前
深入理解C语言内存空间、函数指针(三)(重点是函数指针)
c语言·arm开发·数据库·stm32·单片机·嵌入式硬件·c#
2301_7811435614 小时前
江协科技STM32入门教程——通信接口
c语言·嵌入式
定偶14 小时前
C语言中整数编码方式(原码、反码、补码)
c语言·数据结构·编辑器