.求教,C语言,求ax^2+by+c=0的解
来源:学生作业帮 编辑:搜搜考试网作业帮 分类:综合作业 时间:2024/07/10 12:17:46
.求教,C语言,求ax^2+by+c=0的解
我的程序:#include "stdio.h"
#include "math.h"
void main()
{
int a,b,c;
float x1,x2,p;
printf("please enter a b c\n");
scanf("%f,%f,%f",&a,&b,&c);
p=pow(b,2)-4*a*c;
if(p>0)
{x1=(-b+sqrt(p))/(2*a);
x2=(-b-sqrt(pow(b,2)-4*a*c))/(2*a);}
else if(p
我的程序:#include "stdio.h"
#include "math.h"
void main()
{
int a,b,c;
float x1,x2,p;
printf("please enter a b c\n");
scanf("%f,%f,%f",&a,&b,&c);
p=pow(b,2)-4*a*c;
if(p>0)
{x1=(-b+sqrt(p))/(2*a);
x2=(-b-sqrt(pow(b,2)-4*a*c))/(2*a);}
else if(p
![.求教,C语言,求ax^2+by+c=0的解](/uploads/image/z/18308370-66-0.jpg?t=.%E6%B1%82%E6%95%99%2CC%E8%AF%AD%E8%A8%80%2C%E6%B1%82ax%5E2%2Bby%2Bc%3D0%E7%9A%84%E8%A7%A3)
你的错误:abc要声明为float类型.if分支语句写的比较混乱.我帮你修改的代码为:#include "stdio.h"
#include "math.h"
void main()
{
float a,b,c; //此处有改动
float x1,x2,p;
printf("please enter a b c\n");
scanf("%f,%f,%f",&a,&b,&c);
p=pow(b,2)-4*a*c;
if (p>0)
{
x1=(-b+sqrt(p))/(2*a);
x2=(-b-sqrt(pow(b,2)-4*a*c))/(2*a);
}
else if (p<=1e-6 && p>=-1e-6) //此处有改动
{
x1=-b/(2*a);
x2=-b/(2*a);
}
else //此处有改动
{
printf("this is error\n");
}
printf("%f,%f\n",x1,x2);
}
测试结果:
![](http://img.wesiedu.com/upload/1/d3/1d3a0983aa804dd1a4c18b213945c2fe.jpg)
//谢谢采纳,希望对你有所帮助
再问: 谢谢,不过输入负数时仍然不行。是不是这种定义不能输入负数啊?如果要输入负数该怎么改,比如 输入:1,-2,1
再答:
这是负数的情况,还是好使的啊
再问:
可是我的输出是这样的。难道是软件问题?
再答: 输入的时候请将输入法切换到英文状态
#include "math.h"
void main()
{
float a,b,c; //此处有改动
float x1,x2,p;
printf("please enter a b c\n");
scanf("%f,%f,%f",&a,&b,&c);
p=pow(b,2)-4*a*c;
if (p>0)
{
x1=(-b+sqrt(p))/(2*a);
x2=(-b-sqrt(pow(b,2)-4*a*c))/(2*a);
}
else if (p<=1e-6 && p>=-1e-6) //此处有改动
{
x1=-b/(2*a);
x2=-b/(2*a);
}
else //此处有改动
{
printf("this is error\n");
}
printf("%f,%f\n",x1,x2);
}
测试结果:
![](http://img.wesiedu.com/upload/1/d3/1d3a0983aa804dd1a4c18b213945c2fe.jpg)
//谢谢采纳,希望对你有所帮助
再问: 谢谢,不过输入负数时仍然不行。是不是这种定义不能输入负数啊?如果要输入负数该怎么改,比如 输入:1,-2,1
再答:
![](http://img.wesiedu.com/upload/e/b6/eb647370ce1c69db1f42105e54bbb3cb.jpg)
再问:
![](http://img.wesiedu.com/upload/6/75/675f9363bcfeb9f3f3629a514c1ba610.jpg)
再答: 输入的时候请将输入法切换到英文状态
已知方程组{ax-2by=3c,2ax-by=2c的解是{x=1,y=2,求a:b:c
已知x=1;y=-2是方程组ax+by=c;2ax-by=5c的解,求a:b:c
用C语言求方程式ax^2+bx+c=0的根
C语言 求方程 ax^2+bx+c=0的根
c语言:求二次函数ax^2+bx+c=0的根
c语言 求ax^2+bx+c=0方程的根.a,b,c由键盘输入.
求BD的公式(用AX+BY+C=0表示)求C的坐标
已知关于XY的方程组AX+3BY-20C=0 2AX-BY+2C=0的解是X=1 Y=2求A比B比C的值
已知关于XY的方程组 AX+3BY-20C=0 2AX-BY+2C=0的解是X=1 Y=2 求A比B比C的值
已知{ax-2by=-5的解{x=1求a:b:c {2ax-by=2c {y=1
编写程序,(C语言)求一元二次方程ax的2次方+bx+c=0的根
c语言编程 求一元二次方程的实数根.ax^2+bx+c=0,abc均由键盘读入.