趣味C程序100.1 .2 绘制正弦曲线

说明:1.本问题来源于《C语言经典、趣味、实用程序设计编程百例精解》,所有程序为本人自己编写。与原程序不同之处作有标记。

        2.本系列所有程序均使用codeblocks编译,操作系统为Windows XP。

问题:在屏幕上用“*”显示0~360度的正弦函数sin(x)曲线(不使用数组)

分析:同余弦函数,难点在于控制台程序按行输出。另外,使用反正弦函数求值时,值域是[-pi/2,pi/2]。

#include <stdio.h>

#include <stdlib.h>

#include <math.h>



int main(void)

{

    int radian; //10倍弧度

    double y;  //y为y轴,值为-1到+1,步长为0.1;

    int x; //用62列值代表x轴;62来源于2Pi*10约等于2*3.1*10;



    //用反正弦值求x更加方便于按行输出

    for(y=1; y>=-1; y-=0.1)

    {

        radian=asin(y)*10;



        for(x=0;x<=62;x++)

        {

            if((x==radian)||(x==(31-radian)||(x==radian+61))) //反余弦函数值域[0,pi]

                printf("*");

            else if(radian==0)

                printf("-");

            else

                printf(" ");



        }

        printf("\n");

    }



    return 0;

}

趣味C程序100.1 .2 绘制正弦曲线

图1. 本程序运行图片

你可能感兴趣的:(程序)