c語言ax2bxc0的根
發布時間: 2022-09-22 08:01:24
Ⅰ 用c語言求方程ax2+bx+c=0的根。
#include<stdio.h>
#include<math.h>
int main ()
{
double a,b,c,d,p;
printf("請輸入a,b,c 的值:");
scanf("%lf%lf%lf",&a,&b,&c);
if(a==0)
printf("不是二次方程");
else
{
d=b*b-4*a*c;
if(d==0)
{
printf("有兩個相等的根 x=%7.2lf ",-b/(2*a));
}
if (d>0)
{
printf("有兩個不相等的根 X1=%7.2lf X2=%7.2lf ",(-b+sqrt(d))/(2*a),(-b-sqrt(d))/(2*a));
}
if(d<0)
{
p=sqrt(-d/(2*a));
printf("有兩個共軛復根 X1=%7.2lfi-%7.2lf X2=%7.2lfi-%7.2lf ",p,b/2,-p,b/2);
}
}
return 0;
}
(1)c語言ax2bxc0的根擴展閱讀:
scanf函數用法:
scanf("輸入控制符",輸入參數);
功能:將從鍵盤輸入的字元轉化為「輸入控制符」所規定格式的數據,然後存入以輸入參數的值為地址的變數中。
用scanf()函數以%s格式讀入的數據不能含有空白符時,所有空白符都被當做數據結束的標志。所以題中函數輸出的值只有空格前面的部分。
如果想要輸出包括空格在內的所有數據,可以使用gets()函數讀入數據。gets()函數的功能是讀取字元串,並存放在指定的字元數組中,遇到換行符或文件結束標志時結束讀入。換行符不作為讀取串的內容,讀取的換行符被轉換為字元串結束標志'