求2, 求任意一元二次方程的两个实根.(不考虑无实根的情况) C语言
#include<stdio.h>voidmain(){floata,b,c,x1,x2,d;scanf("%f,%f,%f",&a,&b,&c);d=(b*b-4*a*...
# include <stdio.h>
void main()
{
float a,b,c,x1,x2,d;
scanf("%f,%f,%f",&a,&b,&c);
d=(b*b-4*a*c)^(-1/2);
x1=(-b+d)/2*a;
x2=(-b-d)/2*a;
printf("x1=%5.2f\nx2=%5.2f\n",x1,x2);
}
哪里错了 展开
void main()
{
float a,b,c,x1,x2,d;
scanf("%f,%f,%f",&a,&b,&c);
d=(b*b-4*a*c)^(-1/2);
x1=(-b+d)/2*a;
x2=(-b-d)/2*a;
printf("x1=%5.2f\nx2=%5.2f\n",x1,x2);
}
哪里错了 展开
1个回答
展开全部
在c语言里基升册态,^是按位异或,并不是乘方。
应改成:
#include <stdio.h>
#include <math.h>
void main()
{
double a,b,c,x1,x2,d;
scanf("%lf,%lf,%lf",&a, &b, &c);
搏姿老 d = sqrt(b*b-4*a*c);
x1=(-b+d)/2/a; // 要/(2*a)或/2/a,而不是/2*a
x2=(-b-d)/2/a;
printf("x1=%5.2f\nx2=%5.2f\n",x1,x2);
}
追问
偶的 我知道了 打错了
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询