作业帮 > 综合 > 作业

用c程序解一元二次方程

来源:学生作业帮 编辑:搜搜考试网作业帮 分类:综合作业 时间:2024/06/06 09:55:35
用c程序解一元二次方程
/* Note:Your choice is C IDE */
#include "stdio.h"
void main()
{
double a,b,c;
double s,d,x1,x2;
printf("ax2+bx+c=0\n a= b= c=\n");
scanf("%f %f %f",&a,&b,&c);
d=b*b-4.0*a*c;
if(d>0)
{
x1=(-b+sqrt(d))/2.0/a;
x2=(-b-sqrt(d))/2.0/a;
printf("x1=%f,x2=%f",x1,x2);
}
else if(d==0)
{
x1=-b/2.0/a;
printf("x1=x2=%f",x1);
}
else
{ printf("no root");
}
}
用c程序解一元二次方程
我觉得#include "stdio.h"应该保留,因为你毕竟
调用了scanf()和printf()函数,这种与输入输出有关
的函数都在#include "stdio.h"这个头文件里;
而出错的主要原因是没写#include "math.h",请注意程序
中你使用了sqrt()函数,这个函数是包含在与数学有关的
头文件#include "math.h"里的;
另外,还要看你使用的编译器,如果是Turbo C或GCC应该没有
问题,但如果是Visual C++或其它的,那么可能main()函数的返回
类型不能为void;即便如此,修改起来仍然很容易,只需把
void main()改成int main(),最后再加一句return 0即可;
总之你从上述几方面随便试一试,应该可以通过的.
Have a try!