解题思路:
注意事项:
参考代码:
#include<stdio.h>
#include<math.h>
int gen(float a,float b,float c)
{
float D,x1,x2,xubu1,xubu2,x0;
D=b*b-4*a*c;
if(D>0)
{
x1=(-b+sqrt(D))/(2*a);
x2=(-b-sqrt(D))/(2*a);
printf("x1=%0.3f x2=%0.3f\n",x1,x2);
}
else if(D==0)
{
x1=x2=-b/(2*a) ;
printf("x1=%0.3f x2=%0.3f",x1,x2);
}
else if(D<0)
{
x1=-b/(2*a); //实部
xubu1=(sqrt(-D)/(2*a)); //虚部
x2=-b/(2*a);
xubu2=(sqrt(-D)/(2*a));
printf("x1="); //按要求输出格式
printf("%0.3f",x1);
printf("+%0.3fi",xubu1);
printf(" x2=");
printf("%0.3f",x2);
printf("-%0.3fi",xubu2);
}
}
int main()
{
float a,b,c;
scanf("%f %f %f", &a, &b,&c);
gen(a,b,c);
return 0;
}
在D<0的判断中,也可替换成“
printf("x1=%.3f+%.3fi ",-b/(2*a),sqrt(4*a*c-b*b)/(2*a));
printf("x2=%.3f-%.3fi",-b/(2*a),sqrt(4*a*c-b*b)/(2*a));
”
0.0分
0 人评分
简单的a+b (C语言代码)浏览:787 |
C语言程序设计教程(第三版)课后习题3.7 (C语言代码)浏览:1151 |
简单的a+b (C语言代码)浏览:582 |
C语言程序设计教程(第三版)课后习题5.6 (C语言代码)浏览:905 |
大神老白 (C语言代码)浏览:686 |
震宇大神的杀毒软件 (C语言代码)浏览:1157 |
C二级辅导-等差数列 (C语言代码)浏览:882 |
众数问题 (C语言代码)浏览:656 |
简单的a+b (C语言代码)浏览:665 |
C语言训练-百钱百鸡问题 (C语言代码)浏览:677 |