懂c++进来

来源:百度知道 编辑:UC知道 时间:2024/07/03 05:40:46
题干:使用函数编程求ax*x+bx+c=0方程的根,a,b,c由键盘输入
问题的关键是这里的变量太多,float a,b,c,delta,x1,x2,p,q;,我不懂怎么定义在函数里!也不知道怎么在这将实参的值传递给函数。请高人指点一下!!
#include "stdio.h"
#include "math.h"
float a,b,c,delta,x1,x2,p,q;
float qiugen()
{

delta=b*b-4*a*c;
p=-b/(2*a);
q=(float)sqrt(delta)/(2*a);
if(delta>=0)
{

if(delta==0)
x1=x2=p;
else
x1=p+q;
x2=p-q;
}

else
printf("方程无实根!!\n");
return x1,x2;
}
void main()
{

printf("请输入a,b,c的值:\n");
scanf("%f%f%f",&a,&b,&c);
float qiugen();
printf("方程的根x1=%5.2f,x2=%5.2f",x1,x2);

}

很明显的错误 你都写函数了 但是函数里的变量全是用全局变量写 那就完全失去意义 而且可能错的离谱 需要的话 Hi 我

#include "stdio.h"

看到这样的代码还自称C++的问题,一律无视!!!