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

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C语言编写一个求一元二次方程的实根的程序。相关的知识,希望对你有一定的参考价值。

步骤:

    打开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);                   /*输出两个根的值*/

参考技术A #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;

参考技术B

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

答案:

#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;

参考技术C #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;

望采纳,谢谢~本回答被提问者采纳
参考技术D #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;

C语言试题二十之利用以下的简单迭代方法求方程cos(x)-x=0的一个实根。

1、 题目

 编写函数function,它的功能是:利用以下的简单迭代方法求方程cos(x)-x=0的一个实根。
迭代步骤如下:

(1)取x1初值为0.0; (2)x0=x1,把x1的值赋各x0;
(3)x1=cos(x0),求出一个新的x1;
(4)若x0-x1的绝对值小于0.000001,则执行步骤(5),否则执行步骤(2);
(5)所求x1就是方程cos(x)-x=0的一个实根,作为函数值返回。
程序将输出root=0.739085。 

 

 

 

 

 

 

 

2 、温馨提示

      C语言试题汇总里可用于计算机二级C语言笔试、机试、研究生复试中C程序设计科目、帮助C语言学者打好程序基础、C语言基础,锻炼您的逻辑思维和解决问题的能力,帮助你成为C语言笔试、机试解题高手,帮助你拿到C语言工作的offer,每一个题目都附带源代码和运行结果,让你不再有任何困惑,妈妈再也不担心我的C语言了。如果程序有任何看不懂或者哪个步骤不理解的地方都可以加我微信(15874274916)私聊我,或者有更好的思路解决办法都可以加我微私聊,一起探讨、希望可以正真的帮助到你,同时也可以扫下面的二维码关注我微信公众号,比如你还对生活、美食或者其它方面都感兴趣,都可以加微信交流,博主擅长讲解计算机相关方面的知识、如果大家对计算机方向、前端、移动端、服务端、数据结构、算

以上是关于C语言编写一个求一元二次方程的实根的程序。的主要内容,如果未能解决你的问题,请参考以下文章

C语言试题二十之利用以下的简单迭代方法求方程cos(x)-x=0的一个实根。

C语言试题二十之利用以下的简单迭代方法求方程cos(x)-x=0的一个实根。

求一元二次方程的根c语言

用C语言编写求一元二次方程根的程序

C语言题“输入系数的有效值,计算一元二次方程的实根和虚根”怎么编?

c语言编写一元2次方程。