C语言编写一个求一元二次方程的实根的程序。

 我来答
棉花表表
2018-04-09 · TA获得超过7562个赞
知道小有建树答主
回答量:81
采纳率:96%
帮助的人:2.3万
展开全部

步骤:

  1. 打开visual C++ 6.0-文件-新建-文件-C++ Source File

2.

定义变量:

#include <stdio.h>

#include <math.h>

void main()

{

double a,b,c;                                /*定义系数变量*/

double x1,x2,p;                              /*定义根变量和表达式的变量值*/

3.输入系数:

printf("请输入a,b,c:");                      /*提示用户输入三个系数*/

scanf("%lf%lf%lf",&a,&b,&c);                 /*接收用户输入的系数*/

4.输出回车:

printf("\n");                               /*输出回行*/

5.

计算根:

p=b*b-4*a*c;                            /*给表达式赋值*/

x1=(-b+sqrt(p))/(2*a);                           /*根1的值*/

x2=(-b-sqrt(p))/(2*a);                           /*跟2的值*/

6.

输出结果:

printf("x1=%f,x2=%f\n",x1,x2);                   /*输出两个根的值*/

完整的源代码:

#include <stdio.h>

#include <math.h>

void main()

{

double a,b,c;                                /*定义系数变量*/

double x1,x2,p;                              /*定义根变量和表达式的变量值*/

printf("请输入a,b,c:");                      /*提示用户输入三个系数*/

scanf("%lf%lf%lf",&a,&b,&c);                 /*接收用户输入的系数*/

printf("\n");                               /*输出回行*/

p=b*b-4*a*c;                            /*给表达式赋值*/

x1=(-b+sqrt(p))/(2*a);                           /*根1的值*/

x2=(-b-sqrt(p))/(2*a);                           /*跟2的值*/

printf("x1=%f,x2=%f\n",x1,x2);                   /*输出两个根的值*/

}

Sievers分析仪
2024-10-13 广告
是的。传统上,对于符合要求的内毒素检测,最终用户必须从标准内毒素库存瓶中构建至少一式两份三点标准曲线;必须有重复的阴性控制;每个样品和PPC必须一式两份。有了Sievers Eclipse内毒素检测仪,这些步骤可以通过使用预嵌入的内毒素标准... 点击进入详情页
本回答由Sievers分析仪提供
匿名用户
2017-12-15
展开全部
#include<stdio.h>
#include<math.h>

int main()
{
    int a, b, c;
    int x1, x2;
    int d;
    
    printf("请输入方程的三个系数:");
    scanf("%d, %d, %d", &a, &b, &c);
    
    d = b*b - 4*a*c;
    if(d > 0)
    {
        x1 = (-b + sqrt(d))/(2*a);
        x2 = (-b - sqrt(d))/(2*a);
        
        printf("方程有两个不相等的根为:%d, %d\n", x1, x2);
    }
    else if(d = 0)
    {
        x1 = x2 = (-b)/(2*a);
        printf("方程有两个相等的根为:%d\n", x1);
    }
    else if(d < 0)
    {
        printf("方程没有实根\n");
    }
    
    return 0;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
逆尘r
2018-01-20 · 超过10用户采纳过TA的回答
知道答主
回答量:43
采纳率:57%
帮助的人:14.2万
展开全部

吐槽:书上已基本给出了思路,就是照着敲的事。

答案:

#include<stdio.h>
#include<math.h>

int main(void)
{
float a,b,c; //对应ax+by+c=0
float d;     //蝶儿塔d
float x1,x2; //根

printf("输入系数\n");
scanf("%f%f%f",&a,&b,&c);

d = b*b-4*a*c;

if(d>0)
{
x1 = (-b+sqrt(d))/(2*a);
x2 = (-b-sqrt(d))/(2*a);
printf("%f   %f\n",x1,x2);
}
else if(!d)
{
x1 = (float)-b/(2*a);
printf("%f\n",x1);
}
else
printf("无根\n");
return 0;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
陆捷1
推荐于2017-11-18 · TA获得超过718个赞
知道小有建树答主
回答量:690
采纳率:100%
帮助的人:336万
展开全部
#include <stdio.h>
#include <math.h>
int main(void)
{
double a,b,c,x1,x2,d;
scanf("%lf%lf%lf",&a,&b,&c);
d = b * b - 4 * a * c;
if(d > 0)
{
x1 = (-1 * b + sqrt(d)) / (2 * a);
x2 = (-1 * b - sqrt(d)) / (2 * a);
printf("x1 = %g,x2 = %g\n",x1,x2);
}
else if(d = 0)
{
x1 = x2 = (-1 * b) / (2 * a);
printf("x1 = %g,x2 = %g\n",x1,x2);
}
else
{
printf("方程没有实根\n");
}

return 0;
}
望采纳,谢谢~
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
无影之子
2017-11-18 · TA获得超过168个赞
知道答主
回答量:48
采纳率:83%
帮助的人:15.3万
展开全部
#include"stdio.h"
#include"stdlib.h"
#include"math.h"
int main()
{
double a,b,c,f,x1,x2,x,d;
printf("输入二元一次方程的系数a,b,c\n");
scanf("%lf %lf %lf",&a,&b,&c);
if(a==0)
{
x=c/b;
printf("x=%lf\n",x);
exit(0);
}
d=pow(b,2)-4*a*c;
if(d>0)
{
printf("有两个不同的实根");
x1=(-b+sqrt(d))/(2*a);
x2=(-b-sqrt(d))/(2*a);
printf("x1=%lf,x2=%lf\n",x1,x2);
}
else if(d==0)
{
printf("有两个相同的实根");
f=2*a;
x=(-b)/f;
printf("x1=x2=%lf\n",x);
}
else
printf("无解");
return 0;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(10)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式