首页 > 解决方案 > 如何画一个圆?

问题描述

所以,我写了一个小代码来显示画圆。它有点工作,但以一种非常笨拙的方式。这是运行程序并输入的输出6

 O       O
O         O
           O
           O
           O
           O
           O
           O
           O
O         O
 O       O
  OOOOOOO

看起来不太好。

#include <stdio.h>
#include <math.h>
int main()
{
    int num, dist, x, y;
    printf("Enter the Radius of the Circle: ");
    scanf_s("%d", &num);
    {
        for (x = 1; x <= num * 2; x++)
        {
            for (y = 1; y <= num * 2; y++)
            {
                dist = sqrt((x - num) * (x - num) + (y - num) * (y - num));
                {
                    if (dist==num)
                    {
                        printf("O");
                    }
                    else
                    {
                        printf(" ");
                    }
                }

            }
            printf("\n");

        }

    }
    return 0;
}

这是代码,在网上搜索答案,它可能是“新行”代码的位置。试过不同的地方,不行。

标签: calgorithmvisual-studio

解决方案


你的两个for循环应该从0

for (x = 0; x <= num * 2; x++)
{
    for (y = 0; y <= num * 2; y++)
    {
        dist = sqrt((x - num) * (x - num) + (y - num) * (y - num));
        {
            if (dist==num)
            {
                printf("O");
            }
            else
            {
                printf(" ");
            }
        }

    }
    printf("\n");

}

您可能缺少第一列和第一行。


推荐阅读