用C语言实现一个圣诞树!(超简单详细)全部源码分享

2023-01-16 0 729

2022年12月25号是圣诞了!圣诞总之要有个绿色植物了,那时给我用C词汇撰写两个星夜绿色植物!

用C语言实现一个圣诞树!(超简单详细)全部源码分享

假如生前的标识符能试试你不然,还请在该文上方点个赞全力支持呵呵哟~那个是用纯粹的C词汇标识符同时实现的,须要一点儿微积分

所以他们话不多说,嘿嘿看一看具体内容的效用吧~下面是我想像中中的效用图(并非糊弄他们点进去哦)

前面就要预览更为酷炫的绿色植物,他们能期盼哦~

效用展现:

用C语言实现一个圣诞树!(超简单详细)全部源码分享

自己都图画绿色植物,自认是流程猿的他们能用C语言撰写两个绿色植物出,可能将C词汇的效用没所以炫彩,前面我在看一看弄个带音乐创作或是带七彩的版出,他们先用那个小小预备许多吧~

标识符如下表所示:

#include <math.h> #include <stdio.h> #include <stdlib.h> #define PI 3.14159265359 float sx, sy; float sdCircle(float px, float py, float r) { floatdx = px – sx, dy = py – sy;return sqrtf(dx * dx + dy * dy) – r; } float opUnion(float d1, float d2) { return d1 < d2 ? d1 : d2; } #define T px + scale * r* cosf(theta), py + scale * r * sin(theta) int ribbon() { float x = (fmodf(sy, 0.1f) / 0.1f0.5f) * 0.5f; return sx >= x – 0.05f && sx <= x + 0.05f; } float f(float px, float py, float theta, float scale, int n) { float d = 0.0f; for (float r = 0.0f; r < 0.8f; r += 0.02f) d = opUnion(d, sdCircle(T,0.05f * scale * (0.95f – r))); if (n > 0) for (int t = -1; t <= 1; t += 2) { floattt = theta + t *1.8f; float ss = scale * 0.9f; for (float r = 0.2f; r < 0.8f; r += 0.1f) { d = opUnion(d, f(T, tt, ss *0.5f, n – 1)); ss *= 0.8f; } } return d; } int main(int argc, char* argv[]) { intn = argc >1 ? atoi(argv[1]) : 3; float zoom = argc > 2 ? atof(argv[2]) : 1.0f; for (sy = 0.8f; sy > 0.0f; sy -= 0.02f/ zoom,putchar(\n)) for (sx = -0.35f; sx < 0.35f; sx += 0.01f / zoom) { if (f(0, 0, PI * 0.5f, 1.0f, n) < 0.0f) { if(sy <0.1f) putchar(.); else { if (ribbon()) putchar(=); else putchar(“……………………………..#j&o”[rand() % 32]); } } else putchar(); } }

希望对他们有帮助!快拿着标识符去试试效用吧~有什么问题能看我上方私信哦!

此外,我也给他们撷取我收集的其他资源,从最零基础开始的教程到C词汇C++项目案例,帮助他们在学习C词汇的道路上披荆斩棘!

编程学习书籍撷取:

用C语言实现一个圣诞树!(超简单详细)全部源码分享

编程学习视频撷取:

用C语言实现一个圣诞树!(超简单详细)全部源码分享

整理撷取(多年学习的源代码、项目实战视频、项目笔记,基础入门教程)最重要的是你能在群里面交流提问编程问题哦!

对于C/C++感兴趣能关注小编在后台私信我:【编程交流】一起来学习哦!

相关文章

发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务