用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

来源:学生作业帮助网 编辑:六六作业网 时间:2024/05/06 03:24:36
用c程序解一元二次方程/*Note:YourchoiceisCIDE*/#include"stdio.h"voidmain(){doublea,b,c;doubles,d,x1,x2;printf("

用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
用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程序解一元二次方程 /* 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
我觉得#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!

#include "stdio.h"
把它换成“math.h”应该没有问题,我手头没有tubo.c不能运行,sorry
附:我说错了,不是换成,是加上"math.h"必须加。而VOId 是绝对不需要去的。因为你的程序是没有返回值的。祝你好运!

#include是一定要加上的#include可留可不留,因为它太常用了,不用注明
其他的好象没什么错,自己调一下看看
我也是初学者,加我个好友探讨吧

#include "stdio.h" 上面一行加上 #include "math.h"

??????????????????????

将头文件#include "stdio.h"改为#include "math.h",因为你的程序里有数学函数sqrt(),然后,你的公式可能记错了,这样可能程序运行出来的结果不是自己想要的结果。
正确的公式应该是:
当b*b-4*a*c>0时,x1=(-b+(b*b+4*a*c))/(2*a),x1=(-b-(b*b+4*a*c))/(2*a);
当...

全部展开

将头文件#include "stdio.h"改为#include "math.h",因为你的程序里有数学函数sqrt(),然后,你的公式可能记错了,这样可能程序运行出来的结果不是自己想要的结果。
正确的公式应该是:
当b*b-4*a*c>0时,x1=(-b+(b*b+4*a*c))/(2*a),x1=(-b-(b*b+4*a*c))/(2*a);
当b*b-4*a*c=0时,x1=x2=-b/(2*a);
当b*b-4*a*c<0时,无实根。

收起