C语言打印爱心

1、代码如下:

void print_heart(int size)

{

// 根据大小调整坐标范围

double scale = size / 10.0;

double x_min = -1.5 * scale;

double x_max = 1.5 * scale;

double y_min = -1.5 * scale;

double y_max = 1.5 * scale;

// 设置步长(控制细节)

double step = 0.05 / scale;

for (double y = y_max; y > y_min; y -= step)

{

// x步长减半以补偿字符宽高比

for (double x = x_min; x < x_max; x += step/2)

{

// 心形方程: (x² + y² - 1)³ - x²y³ = 0

double a = x*x + y*y - 1;

if (a*a*a - x*x*y*y*y <= 0)

{

//printf("*");

printf("\033[1;31m*\033[0m");

}

else

{

printf(" ");

}

}

printf("\n");

}

}

int main()

{

int size;

printf("请输入爱心大小 (1-20): ");

scanf("%d", &size);

// 限制大小范围

if (size < 1) size = 1;

if (size > 20) size = 20;

print_heart(size);

return 0;

}

2、运行结果如下:

相关推荐
你怎么知道我是队长16 小时前
C语言---输入和输出
c语言·开发语言
net3m3316 小时前
单片机屏幕多级菜单系统之当前屏幕号+屏幕菜单当前深度 机制
c语言·c++·算法
mmz120716 小时前
二分查找(c++)
开发语言·c++·算法
你怎么知道我是队长16 小时前
C语言---文件读写
java·c语言·开发语言
陌路2016 小时前
C++30 STL容器 -deque双端队列
开发语言·c++
Insight16 小时前
拒绝手动 Copy!一文吃透 PyTorch/NumPy 中的广播机制 (Broadcasting)
算法
xb113217 小时前
C#委托详解
开发语言·c#
brent42317 小时前
DAY50复习日
开发语言·python
CoovallyAIHub17 小时前
工业视觉检测:多模态大模型的诱惑
深度学习·算法·计算机视觉
木头程序员17 小时前
前端(包含HTML/JavaScript/DOM/BOM/jQuery)基础-暴力复习篇
开发语言·前端·javascript·ecmascript·es6·jquery·html5