最美的C语言代码参上
各位,看到标题大家肯定会联想许多,到底怎样算最美的代码?先不多说,代码先上:
#include<stdio.h>#include
<graphics.h>#include <math.h>#include <conio.h>#define PI 3.1415926 //绘制心形线的函数void cardioid(int x, int y, int a)//x: x方
向上的偏移量//y: y方向上的偏移量//a: 缩放倍数
{ int x1, y1, x2, y2; double angle = 0; while (angle <= 2 *
PI) { x1 = a * (2 * sin(angle) + sin(2 * angle)) + x; y1 =
a * (2 * cos(angle) + cos(2 * angle)) + y; angle += (PI / 180);
x2 = a * (2 * sin(angle) + sin(2 * angle)) + x;
y2 = a * (2 * cos(angle) + cos(2 * angle)) + y;
line(x1, y1, x2, y2); Sleep(5); }} int main(void)
{ initgraph(960, 540); setlinecolor(RGB(255, 0, 0));
cardioid(480, 270, 50); int ret = getch(); closegraph(); return 0;}
有人会疑问了,这怎么算最美代码?其实,今天之所以写这篇文章,要从下面说起,我们慢慢道来。
它讲的是我们熟知的大名鼎鼎的数学家笛卡尔的故事。1650年的斯德哥尔摩街头,52岁的笛卡尔邂逅了18岁瑞典公主克莉丝汀。
有一天,克莉丝汀的马车路过街头发现了笛卡尔是在研究数学。公主便下车询问,最后笛卡尔发现公主很有数学天赋,道别后的几天笛卡尔收到通知,国王要求他做克莉丝汀公主的数学老师,
其后几年中相差34岁的笛卡尔和克莉丝汀相爱,国王发现并处死了笛卡尔。在最后笛卡尔写给克莉丝汀的情书中出现了r=a(1-sinθ)的数学坐标方程,
解出来是个心形图案,就是著名的“心形线”,学过高数的应该对此有所了解。这封情书最后被收录到欧洲笛卡尔博物馆,故事浪漫而又悲惨,令人感叹。
如果你在学习C/C++的过程中遇到了问题,可以来加入小编的企鹅圈问小编哦~小编很热情的(●’◡’●)
而我们要说的就是这个著名的“心形线”:
心形线,是一个圆上的固定一点在它绕着与其相切且半径相同的另外一个圆周滚动时所形成的轨迹,因其形状像心形而得名。下面是心形线的绘制动图:
到这儿大家应该都明白了,上面的C代码就是用来绘制r=a(1-sinθ)这个“心形线”的,这跟网上很多用大量printf得到爱心图案不一样,
那些形状比较随意,而“心形线”有严格的几何要求,所以相对来说复杂一点,用到了图形化编程和数学库函数,这就是开头C代码的由来了。
当然,我们这里讲的美是蕴含在代码背后的故事,而不是代码本身,因为我们一直说深层次的美才是真的美,也一直相信真的美一定是来源于生活的内在,就像笛卡尔浪漫而又悲惨的爱情故事一样,你说呢?
最美的C语言代码参上相关推荐
- “最美”的C语言代码
#include<stdio.h>int main(){printf("Hello World!");return 0; } 运行结果
- Python在Linux实现代码特效,关于在Linux系统上的Ubuntu上基于python3、shell语言代码的实现...
首先打开执行终端,然后进入路径(执行文件的目录): 1.python3语言代码的实现步骤: 1>python3 xxx.py(一步实现) 2.shell语言代码的实现步骤: 1>获取属主的 ...
- 编写C语言代码,实现以下功能:输入平面上两个点P1(x1,y1)和P2(x2,y2)的坐标,以这两个点为左上角和右下角可以确定一个矩形,输出这个矩形的周长。要求平面上点的坐标和矩形都用结构体来表示。
编写C语言代码,实现以下功能: 输入平面上两个点P1(x1,y1)和P2(x2,y2)的坐标,以这两个点为左上角和右下角可以确定一个矩形,输出这个矩形的周长.要求平面上点的坐标和矩形都用结构体来表示. ...
- c语言代码中调用系统命令行.sh shell脚本,linux shell system传参
C语言代码中调用命令行: 1. 使用system(" 命令行 "); -- 执行完命令行后,会返回原先C代码的位置,继续执行. 2. 如果命令行中需要传参,使用 sprin ...
- 学习在虚拟机Linux上写c语言代码
记录第一次在虚拟机Linux上写c语言代码的过程 本次实验是在Oracle VM Virtualbox软件中创建的Linux虚拟机上实现的. 目录 1. 安装编译环境 1.1. 先打开Linux的终端 ...
- 锻炼左右脑协调的摸鱼必备游戏——《Double Snakes》完整C语言代码!
锻炼左右脑协调的摸鱼必备游戏--<Double Snakes>完整C语言代码! 目录 锻炼左右脑协调的摸鱼必备游戏--<Double Snakes>完整C语言代码! (一)运行 ...
- C语言代码示范与讲解+C语言编程规范及基础语法+编程实战
上一篇文章:C语言程序设计概述+C语言简介+算法概述 C语言代码示范与讲解+C语言编程规范及基础语法+编程实战 一:代码示范集加讲解 1.C语言第一个代码:打印"This is the fi ...
- 写给新手:2021版调参上分手册!
↑↑↑关注后"星标"Datawhale 每日干货 & 每月组队学习,不错过 Datawhale干货 作者:山竹小果,来源:夕小瑶的卖萌屋 在日常调参的摸爬滚打中,参考了不少 ...
- 写给新手炼丹师:2021版调参上分手册
点击上方"视学算法",选择加"星标"或"置顶" 重磅干货,第一时间送达 作者丨山竹小果 来源丨夕小瑶的卖萌屋 编辑丨极市平台 导读 在日常调 ...
最新文章
- C语言考研复试知识点整理
- PocoMaker(魅客)
- win7系统启动到一半停止_win7系统启动一半死机的解决方法
- sqoop mysql where_Sqoop基本语法简介
- Oracle数据库进程杀不掉,求助oracle进程杀不死问题
- go gorm框架一对多查询代码示例
- 完整的 .NET Core 目标框架的预处理器符号列表
- 千万级测试String、StringBuffer和StringBuilder的速度
- Mac电脑上非常好用的英汉互译词典软件
- Windows7安装PADS2007详细步骤____亲自实验总结
- 单片机|CC2530实验入门
- ps图像放大后变清晰和文字模糊变清晰
- 一阶系统和二阶系统动态响应分析
- 231 订单支付 苹果内购
- 网络爬虫(一):爬虫基础原理
- Facebook登录-前端网页以及在angular中的使用方法
- 南大通用GBase 8s数据空间管理
- BZOJ 2407: 探险/4398: 福慧双修
- wangEditor上传本地视频
- HDMI画面分割器价格决定因素分析
热门文章
- 微信支付0.2%费率商户号开通
- 博贤科技管理系统漏洞oday
- Direct3D 11 Devices
- java手机哪款好_5630诺基亚?诺基亚2680s是java系统?直板按键手机哪款好?诺基亚5630刷机包RM-431官方刷机包最新版...
- 【计算机网络】(2)网络传输介质+交换机的基本原理与配置+vlan+trunk
- SEO笔记--代码优化(三)
- 千寻 SDK 集成开发指南 v1.1.7
- 转载《你首先是一个人,然后你才是程序员》——左潇龙
- Ucinet三天写论文!结构对等分析实战
- 笨办法学python第五版_笨办法学python PDF下载|笨办法学python第五版 电子版附目录_最火软件站...