以下的编写的程序哪里错了?作业要求是这样的计算出表达式(b+sqrt(b*b+2*a))⼀(a-b) 的值,输出结果取小数

2025-02-22 22:44:48
推荐回答(4个)
回答1:

#include
#include
int main()
{
float a,b;
double c;
printf("Please input a,b\n");
scanf("%f%f",&a,&b);
c = ((double)b+sqrt((double)b*b+2*a))/(a-b);
  printf("c=%.2f\n",c);//这里写上.2f表示结果取小数点后两位
return 0;
}

回答2:

printf("c=%.2lf\n",c); // 小数点后2位 %.2lf
return 0; // 分号
-------
另外,是否要求判断
if ( fabs( a-b) < 1E-07 ) {...};
if ( (b*b+2*a) < 0.0 ) { printf("no real solution\n"); return 0; }
或要求给出 复数解?

回答3:

将最后的一句改成printf("c=%0.2lf\n",c);就好了。

回答4:

..........................................你火星来的吧?