用C语言求解一元二次方程

题目如图,为什么我的编程不是输出-1.#J,就是啥都输出不了...有人跟我说是溢出了,我是初学者,还不太懂溢出是什么意思,求大神赐教#include <stdio.h>#include <math.h>int main(){ double a,b,c,d,x1,x2; d=b*b-4*a*c; x1=(-b+sqrt(d))/(2*a); x2=(-b-sqrt(d))/(2*a); while(scanf("%lf%lf%lf",&a,&b,&c)!=EOF) { if(d<0) { printf("无解\n"); } else if(d==0) { printf("%.2lf %.2lf\n",x1,x2); } else { if(x1>x2) { printf("%.2lf %.2lf\n",x1,x2); } else if(x1<x2) { printf("%.2lf %.2lf\n",x2,x1); } } } return 0;}

#include <stdio.h>
#include <math.h>
int main()
{
    double a, b, c, d, x1, x2;
    
    while (scanf("%lf%lf%lf", &a, &b, &c) != EOF)
    {
        d = b * b - 4 * a * c;
        if (d < 0)
        {
            printf("无解\n");
        }
        else if (d == 0)
        {
            x1 = (-b + sqrt(d)) / (2 * a);
            x2 = (-b - sqrt(d)) / (2 * a);
            printf("%.2lf %.2lf\n", x1, x2);
        }
        else
        {
            x1 = (-b + sqrt(d)) / (2 * a);
            x2 = (-b - sqrt(d)) / (2 * a);
            if (x1 > x2)
            {
                printf("%.2lf %.2lf\n", x1, x2);
            }
            else if (x1 < x2)
            {
                printf("%.2lf %.2lf\n", x2, x1);
            }
        }
    }
    return 0;
}

追问

麻烦问下,为什么不能一开始就定义好x1和x2的解答式呢

温馨提示:内容为网友见解,仅供参考
无其他回答

c语言求一元二次方程
c语言求一元二次方程代码:include <stdio.h> #include <math.h> int main() { double a, b, c, delta, x1, x2, realPart, imaginaryPart; printf("请输入一元二次方程的三个系数:\\n"); scanf("%lf %lf %lf", &a, &b, &c); delta = b * b - 4 * a * c; if (delt...

c语言怎么求解一元二次方程
c语言一元二次方程编程是#include <iostream> 。#include <cmath>。using namespace std。int main()。{float a,b,c;float x1,x2; cin>a>>b>>c;float dlt=b*b-4*a*c;if(dlt>=0){x1=-b\/2\/a+sqrt(dlt)。\/2\/ax2=-b\/2\/a-sqrt(dlt)\/2\/a。形如x=p或(nx+m)=p(p≥0...

怎样用c语言解一元二次方程
对于如下的一元二次方程:ax*x+bx+c=0设计C语言程序,输入一元二次方程的三个系数a、b、c,求解出该方程的两个根,并且允许用户在程序中多次输入不同的系数,以求解不同的一元二次方程的解。编程思路分析:对于该方程,令delta=b^2-4*a*c,从数学的角度来讲,我们需要根据delta的值来判断该...

c语言一元二次方程求根程序
c语言一元二次方程求根程序算法的构思过程:一元二次方程的一般式:ax^2+bx+c=0。我们知道,一元二次方程有解(根)的充要条件是:b^2-4ac>=0。如果不满足此关系式,那么方程无解。接着当方程有解的时候又出现了两种情况。有两个重根(大小相等的根)或者两个大小不等的根,为了是程序更加完...

c语言解一元二次方程是什么?
else。{x1=-b\/2\/a;x2=sqrt(-dlt)\/2\/a;cout<<a<<"x^2+"<<b<<"x+"<<c<<"=0有两个虚根:"。cout<<"x="<<x1<<"+\/-"<<x2<<"i"<<endl;}。return 0。成立条件:一元二次方程成立必须同时满足三个条件:①是整式方程,即等号两边都是整式,方程中如果有分母;且未知数在...

C语言编程:求一元二次方程的解,要求如下图,咋编?
main(int argc,char *argv[]){ double a,b,c,t;printf("Enter a, b, c(R:)...\\n");if(scanf("%lf%lf%lf",&a,&b,&c)==3 && a)(t=b*b-4*a*c)>0 ? fp(a,b,t) : t<0 ? fn(a,b,t) : f0(a,b);else printf("Input error, exit...\\n");return 0;} ...

c语言求一元二次方程有几个根手动输入d等于三角形大于等于0
以下是一个求解一元二次方程的示例程序,可以手动输入方程的系数a、b、c,然后计算判别式d并判断方程有几个根:include <stdio.h> include <math.h> int main() { double a, b, c, d, x1, x2; printf("请输入一元二次方程的系数a、b、c:"); scanf("%lf %lf %lf", &a, ...

C语言编写一个程序求解一元二次方程ax2+bx+c=0的根。要求系数a,b,c从...
下面是求解一元二次方程的C语言代码:include <stdio.h> include <math.h> int main(){ double a, b, c, x1, x2, disc;printf("请输入一元二次方程的系数a, b, c: ");scanf("%lf %lf %lf", &a, &b, &c);disc = b * b - 4 * a * c;if (disc > 0) { x1 = (...

c语言计算一元二次方程的根
c语言计算一元二次方程的根如下:include<stdio.h>#include<math.h>voidmain(){doublea,b,c;doublex1,x2,p;printf("请输入a,b,c:");scanf("%lf%lf%lf",&a,&b,&c);printf("\\n");p=b*b-4*a*c;x1=(-b+sqrt(p))\/(2*a);。x2=(-b-sqrt(p))\/(2*a);printf("x1=%f,...

c语言求一元二次方程的根
求一元二次方程:ax2+bx+c=0 的根;输入三个实数a,b,c的值,且a不等于0。#include <stdio.h>#include <math.h>int main(){;float a,b,c,x1,x2,d;printf("输入方程的三个系数:");scanf("%f %f %f",&a,&b,&c);if(a!=0);{;d=sqrt(b*b-4*a*c);x1=(-b+d)\/(2...

相似回答