控制台绘制正弦曲线和余弦曲线同时显示

看这一篇时如果不会绘制正弦/余弦曲线可以先看看这一篇哦:控制台绘制正弦/余弦曲线

那么,如果想要同时显示的话,我们可能需要在同一行中绘制出3个或者4个点了。我的思路比较简略,不过算法看上去非常非常不整洁,还望得到大家的帮助……

我通过Y等于二分之根号二和负二分之根号二以及Y轴将整个图形分成4层,从上往下依次绘制。具体看代码啦……

#include <stdio.h>
#include <math.h>

int main()
{
    double y;
    int x,k1,k2;
    for(y=1;y>=-1;y-=0.1)
    {
        k1=acos(y)*10;
        k2=asin(y)*10;

        if(k1<k2&&k2>=0)
        {
            for(x=1;x<k1;x++)
                printf(" ");
            printf("*");
            for(x=k1+1;x<k2;x++)
                printf(" ");
            printf("*");
            for(;x<30-k2;x++)
                printf(" ");
            printf("*");
            for(;x<62-k1;x++)
                printf(" ");
            printf("*\n");
        }
        else if(k2<k1&&1<=k2&&k2<=15)
        {
            for(x=1;x<k2;x++)
                printf(" ");
            printf("*");
            for(x=k2+1;x<k1;x++)
                printf(" ");
            printf("*");
            for(;x<30-k2;x++)
                printf(" ");
            printf("*");
            for(x=30-k2;x<62-k1;x++)
                printf(" ");
            printf("*\n");
        }
        else if(k1<(30-k2)&&(30-k2)<(62-k1)&&-15<=k2&&k2<=-1)
        {
            for(x=1;x<k1;x++)
                printf(" ");
            printf("*");
            for(;x<31-k2;x++)
                printf(" ");
            printf("*");
            for(;x<62-k1;x++)
                printf(" ");
            printf("*");
            for(;x<61+k2;x++)
                printf(" ");
            printf("*\n");
        }
        else if((62-k1)<(31-k2)&&-15<=k2&&k2<=-1)
        {
            for(x=1;x<k1;x++)
                printf(" ");
            printf("*");
            for(;x<62-k1;x++)
                printf(" ");
            printf("*");
            for(;x<31-k2;x++)
                printf(" ");
            printf("*");
            for(;x<61+k2;x++)
                printf(" ");
            printf("*\n");
        }
    }
    return 0;
}

这里写图片描述

大家有什么更好的想法欢迎留言啊~

【这里还是源码,不需要资源积分】



为使本文得到斧正和提问,转载请注明出处:
http://blog.csdn.net/nomasp

posted @ 2015-04-30 06:41  nomasp  阅读(180)  评论(0编辑  收藏  举报