c语言编程,在屏幕上绘制y=a*x2+b*x+c的图形,x取值从-d到+d之间。

2024-11-16 08:23:51
推荐回答(2个)
回答(1):

#include

void Draw(double a,double b,double c,double d)

{

    int const N=40;

    int const Y=20;

    char mp[N][N];

    int i,j;

 

    for(i=0;i

    for(j=0;j    mp[i][j]=' ';

 

    double dx=d*2/N;

    double x=-d,y;

    for(i=0;i

    {

        x+=dx;

        y=x*x*a+b*x+c;

        if((int)(y)+Y>=N)continue;

        mp[(int)y+Y][i]='*';

    }

    for(i=N-1;i>=0;printf("\n"),i--)

    for(j=0;j

    printf("%c",mp[i][j]);

}

int main()

{

    double a,b,c,d;

    scanf("%lf%lf%lf%lf",&a,&b,&c,&d);

    Draw(a,b,c,d);

    return 0;

}

 

你看这种能够达到你的要求不。。程序里面有局限性,就是算出的y不能太大了

回答(2):

我认为楼主应该使用MatLab绘图啊,用命令行绘图,这个太不专业了。。。。