問題 A: 例題4-1 一元二次方程求根
阿新 • • 發佈:2017-10-22
hust tle 分隔 ref bmi std 獲得 輸入 魔法
獻花: 215 解決: 201
[獻花][花圈][TK題庫]
問題 A: 例題4-1 一元二次方程求根
時間限制: 1 Sec 內存限制: 12 MB獻花: 215 解決: 201
[獻花][花圈][TK題庫]
題目描述
求一元二次方程ax2+bx+c=0的根,三個系數a, b, c由鍵盤輸入,且a不能為0,但不保證b2-4ac>0。
程序中所涉及的變量均為double類型。
輸入
以空格分隔的一元二次方程的三個系數,雙精度double類型輸出
分行輸出兩個根如下(註意末尾的換行):
r1=第一個根
r2=第二個根
結果輸出時,寬度占7位,其中小數部分2位。
如果方程無實根,輸出一行如下信息(註意末尾的換行):
No real roots!
樣例輸入
1 2 3
樣例輸出
No real roots!
答案:
#include<stdio.h>
#include<math.h>
int main(){
double a,b,c,jud,r1,r2;
scanf("%lf %lf %lf",&a,&b,&c);
jud=b*b-4*a*c;
if(jud>=0&a!=0){
r1=(-b+sqrt(jud))/2/a;
r2=(-b-sqrt(jud))/2/a;
printf("r1= %.2f\n",r1);
printf("r2= %.2f\n",r2);
}
else{
printf("No real roots!\n");
}
return 0;
}
問題 A: 例題4-1 一元二次方程求根