展开全部
#include "stdio.h"
#include "math.h"
double x1,x2,p;
float file1(float a,float b)
{
x1=(-b+sqrt(p))/2*a;
x2=(-b-sqrt(p))/2*a;
return 0;
}
float file2(float a,float b)
{
x1=x2=(-b+sqrt(p))/2*a;
return 0;
}
main()
{
float a,b,c;
scanf("%f%f%f",&a,&b,&c);
p=b*b-4*a*c;
printf("方程是:%.3f*x*x+%.3f*x+%.3f=0\n",a,b,c);
if(p>0)
{
file1(a,b);
printf("X1=%f\tX2=%f\n",x1,x2);
}
else if(p==0)
{
file2(a,b);
printf("X1=%f\tX2=%f\n",x1,x2);
}
else printf("方程无解");
}
#include "math.h"
double x1,x2,p;
float file1(float a,float b)
{
x1=(-b+sqrt(p))/2*a;
x2=(-b-sqrt(p))/2*a;
return 0;
}
float file2(float a,float b)
{
x1=x2=(-b+sqrt(p))/2*a;
return 0;
}
main()
{
float a,b,c;
scanf("%f%f%f",&a,&b,&c);
p=b*b-4*a*c;
printf("方程是:%.3f*x*x+%.3f*x+%.3f=0\n",a,b,c);
if(p>0)
{
file1(a,b);
printf("X1=%f\tX2=%f\n",x1,x2);
}
else if(p==0)
{
file2(a,b);
printf("X1=%f\tX2=%f\n",x1,x2);
}
else printf("方程无解");
}
展开全部
要是没有实数根也要求出来嘛?
#include<stdio.h>
#include<math.h>
main()
{
double a,b,c,x1,x2,disc;
printf("input a b c:");
scanf("%f%f%f",&a,&b,&c);
if(fabs(a)<1e-6)
{
printf("方程不是一个二次方程!\n");
}
else{
disc = b*b - 4*a*c;
if(disc<0){
printf("方程没实数根!\n");
}
else{
if(fabs(disc)<1e-6)
{
printf("方程有两个相等的实数根:%8.4f\n",-b/(2*a));
}
else
{
x1 = (-b + sqrt(disc))/(2*a);
x2 = (-b - sqrt(disc))/(2*a);
printf("方程有两个不相等的实根:%8.4f,%8.4f\n",x1,x2);
}
}
}
}
#include<stdio.h>
#include<math.h>
main()
{
double a,b,c,x1,x2,disc;
printf("input a b c:");
scanf("%f%f%f",&a,&b,&c);
if(fabs(a)<1e-6)
{
printf("方程不是一个二次方程!\n");
}
else{
disc = b*b - 4*a*c;
if(disc<0){
printf("方程没实数根!\n");
}
else{
if(fabs(disc)<1e-6)
{
printf("方程有两个相等的实数根:%8.4f\n",-b/(2*a));
}
else
{
x1 = (-b + sqrt(disc))/(2*a);
x2 = (-b - sqrt(disc))/(2*a);
printf("方程有两个不相等的实根:%8.4f,%8.4f\n",x1,x2);
}
}
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
//一元二次方程: ax*x + bx + c = 0.
#include"stdio.h"
void main()
{
double a,b,c,m,x1,x2;
printf("输入方程系数a,b,c\n");
scanf("%lf%lf%lf",&a,&b,&c);
m = b*b- 4*a*c;
x1 = -(b*b - 4*a*c)/2*a ; //求根公式
x2 = +(b*b - 4*a*c)/2*a;
if (m<=0)
{
printf("无解!\n");
}
else
printf("解为: x1=%lf ,x2=%lf\n",x1,x2);
}
#include"stdio.h"
void main()
{
double a,b,c,m,x1,x2;
printf("输入方程系数a,b,c\n");
scanf("%lf%lf%lf",&a,&b,&c);
m = b*b- 4*a*c;
x1 = -(b*b - 4*a*c)/2*a ; //求根公式
x2 = +(b*b - 4*a*c)/2*a;
if (m<=0)
{
printf("无解!\n");
}
else
printf("解为: x1=%lf ,x2=%lf\n",x1,x2);
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
一楼纯粹乱写。
二楼的程序马马虎虎,在不考虑溢出和舍入误差的情况下效率也差些。
二楼的程序马马虎虎,在不考虑溢出和舍入误差的情况下效率也差些。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
C语言编程实现求一元二次方程的根源码详解
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询