跳动的爱心

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

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

#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;

}

相关推荐
wyjcxyyy7 分钟前
java反序列化-cc1链
java·c语言·开发语言
玖玥拾27 分钟前
C/C++ 基础笔记(一)
c语言·c++·笔记
逆向命运1 小时前
PC企微搜索手机号窗口绕过
c语言·汇编·c++·飞书·企业微信
.千余1 小时前
【C++】C++核心语法:函数重载与缺省参数原理与避坑
c语言·开发语言·c++·经验分享·笔记·git·学习
SoftLipaRZC1 小时前
C语言内存函数完全指南:memcpy/memmove/memset/memcmp
c语言·开发语言
金刚狼882 小时前
用atomic解决全局变量跨线程修改的问题
c语言
SuperByteMaster2 小时前
callee和caller的区别
c语言
kkeeper~11 小时前
0基础C语言积跬步之数据在内存中的存储
c语言·数据结构·算法
qq38624619613 小时前
更新补发第6天:7天学会C语言,每天5分钟,不需要基础
c语言·for循环·循环语句·while循环·do-while循环
张暮笛19 小时前
深入浅出:C语言中的“虚表分派”
c语言