#include<stdio.h> #include<math.h> int main() {double a,b,c,d,x1,x2; scanf("%lf %lf %lf",a,b,c); d=sqrt(b*b-4*a*c); if(d<0){printf("该函数无实数根\n");} else{x1=(-b-d)/(2*a); x2=(-b+d)/(2*a); printf("%lf\n%lf\n",x1,x2); } return 0; }帮我找出这段代码的错误
时间: 2023-06-16 13:02:59 浏览: 125
C语言实验一 集成开发环境.zip
这段代码有两个错误:
1. 在使用 `scanf` 函数时,需要传入变量的地址,即使用 `&` 符号,例如 `scanf("%lf %lf %lf",&a,&b,&c);`
2. 在使用 `sqrt` 函数前,需要包含头文件 `#include<math.h>`
以下是修改后的代码:
```
#include<stdio.h>
#include<math.h>
int main() {
double a,b,c,d,x1,x2;
scanf("%lf %lf %lf",&a,&b,&c);
d=sqrt(b*b-4*a*c);
if(d<0) {
printf("该函数无实数根\n");
} else {
x1=(-b-d)/(2*a);
x2=(-b+d)/(2*a);
printf("%lf\n%lf\n",x1,x2);
}
return 0;
}
```
阅读全文