首页 文章详情

用C语言字符画圆

嵌入式Linux | 1126 2020-12-17 21:14 0 0 0
UniSMS (合一短信)

用C语言画圆,这是一是算法的问题,我们知道,程序是由数据结构加算法组成的,研究这类东西,其实也是研究算法的问题,是比较有意思的。

圆心为0的时候,圆的公式

公式:


那我们要如何写代码呢?

示例代码

#include "stdio.h"

int main()
{
    double x,y;
    for(x=1;x>-1;x-=0.05,printf("\n"))
        for(y=1;y>-1;y-=0.025){
            putchar(((x*x + y*y) < 1)?'=':' ');
        }
    getchar();
    return (0);
}

x 用来确定每一行,y 用来确定每一列,在每一行结束的时候呢,我们需要输出换行符来起新的一列。

0.025 和 0.5 是两倍的关系,因为我们的字符在电脑终端显示的时候,高是宽的两倍,如果设置成1的话,就会变成一个椭圆形。

x 和 y 的范围取值,正好是一个正方形,在边长是 2 的正方形里面切取一个半径为 1 的圆出来

putchar 用到了?:表达式,让在圆内的输出=字符,其余输出空格。

这段代码最初来自知乎的叶神。


推荐阅读:
专辑|Linux文章汇总
专辑|程序人生
专辑|C语言
我的知识小密圈



good-icon 0
favorite-icon 0
收藏
回复数量: 0
    暂无评论~~
    Ctrl+Enter