趣味图形之 二次函数与圆相交

先看看它像什么????!

好吧(∩_∩),它像,,,,很多,发挥自己的创意去组合吧





1.

/***二次函数与圆最完美图像***/
#include <stdio.h>
#include <math.h>
 
int main (void)
{
    int m, n, x;
    double y;
    for ( y = 20; y >= -10; y-- )
    {
        if ( y > 10 )
        {
            m = 1.8 * sqrt(y);
            for ( x = 1; x <= 40; x++ )
            {
                if ( x == 20 - m || x == 20 + m )
                    printf ( "*" );
                else 
                    printf (" ");
            }
        }
        else if ( y >= 0 && y <= 10 )
        {
            m = 1.8 * sqrt ( y );
            n = 1.8 * sqrt ( 100 - y * y );
            for ( x = 1; x <= 40; x++ )
            {
                if ( x == 20 - m && x == 20 - n || x == 20 + m && x == 20 + n )
                    printf ("+");
                else if ( x == 20 - m || x == 20 - n || x == 20 + m || x == 20 + n )
                    printf ("*");
                else
                    printf (" ");
            }
        }
        else
        {
            n = 1.8 * sqrt ( 100 - y * y );
            for ( x = 1; x <= 40; x++ )
            {
                if ( x == 20 - n || x == 20 + n )
                    printf ("*");
                else
                    printf (" ");
            }
        }
        printf ("\n");
    }
    return 0;
}


2.


/***二次函数与圆的叠加显示2***/
# include <stdio.h>
# include <math.h>
int main (void)
{
    int x, m, n;
    double y;
    for (y = 10; y >= 0; y--)
    {
        m = 1.8 * sqrt( y );
        n = 1.8 * sqrt( 100 - y * y );
        for ( x = 1; x <= 40; x++ )
        {
            if ( (x == 20 - m) && (x == 20 - n) || (x == 20 + m) && (x == 20 + n) )
                printf ("+");
            else if ( (x == 20 - m) || (x == 20 - n) || (x == 20 + m) || (x == 20 + n) )
                printf ("*");
            else
                printf (" ");
        }
        printf ("\n");
    }
    for ( y = 0; y >= -10; y-- )
    {
        n = 1.8 * sqrt( 100 - y * y );
        for ( x = 1; x <= 40; x++ )
        {
            if ( x == 20 - n || x == 20 + n )
                printf ("*");
            else 
                printf (" ");
        }
        printf ( "\n" );
    }
    return 0;
}


运行之后(和第一个不同,要注意的是,屏幕的长宽比不一样)




3.


/***二次函数与圆的叠加显示3***/
# include <stdio.h>
# include <math.h>
int main (void)
{
    int m, n;
    double y;
    for ( y = 10; y >= -10; y-- )
    {
        m = 1.8 * sqrt ( abs(y) );
        n = 1.8 * sqrt ( 100 - y * y );
        for ( int x = 0; x <= 40; x++ )
        {
            if ( (x == 20 - m) && (x == 20 - n) || ( x == 20 + m ) && ( x == 20 + n ) )
                printf ( "+" );
            else if ( (x == 20 - m) || (x == 20 - n) || ( x == 20 + m ) || ( x == 20 + n ) )
                printf ( "*" );
            else 
                printf ( " " );
        }
        printf ( "\n" ); 
    }
    return 0;
}


运行之后

图片超神般存在







  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值