怎样用C语言编一个解一元二次方程的程序?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了怎样用C语言编一个解一元二次方程的程序?相关的知识,希望对你有一定的参考价值。
这个只能计算已经化简成aX^2+bX+c=0的一元二次方程
double p=b*b-4*a*c;//计算Δ
if (p<0)
return 0;//方程无解,返回0
p=√p//求Δ的平方根
*x1=……//用求根公式计算X1
*x2=……//用求根公式计算X2
return 1;//方程有解,返回1
就这些了,求根公式和求平方根函数我忘了,你自己查一下。头文件要加一个<math.h>。
参考技术A#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();
哪有无关内容?最后一句return那个是返回值好吧
参考技术B用三个变量,来接一元二次方程的三个参数,
然后根据这三个参数计算△=b*b-4ac,再根据△判断根情况,并根据求根公式计算出相应根,以上都是用c数学计算不难 ,用到开方函数sqrt
(直接开)
形如x=p或(nx+m)=p(p≥0)的一元二次方程可采用直接开平方的方法解一元二次方程.
如果方程化成x²=p的形式,那么可得x=±p;(x²=p,x=±根号p)
如果方程能化成(nx+m)=p(p≥0)的形式,那么nx+m=±p.(同上)
注意:
①等号左边是一个数的平方的形式而等号右边是一个非负数.
②降次的实质是由一个一元二次方程转化为两个一元一次方程.
③方法是根据平方根的意义开平方
(配方法)
(1)将一元二次方程配成(x+m)=n的形式,再利用直接开平方法求解,这种解一元二次方程的方法叫配方法.
(2)用配方法解一元二次方程的步骤:
①把原方程化为ax²+bx+c=0(a≠0)的形式;
②方程两边同除以二次项系数,使二次项系数为1,并把常数项移到方程右边;
③方程两边同时加上一次项系数一半的平方;
④把左边配成一个完全平方式,右边化为一个常数;
⑤如果右边是非负数,就可以进一步通过直接开平方法来求出它的解,如果右边是一个负数,则判定此方程无实数解。
怎样用C语言编出在n个数里找最大值的程序?
用循环语句!答案若好,另有悬赏!
找最大的值max=0;
for(int i=0;i<n;i++) if(max<a[i]) max=a[i]; printf("%d",max);
找最小的值
min=100;
for(int i=0;i<n;i++) if(min>a[i]) min=a[i]; printf("%d",min);
找某个值
scanf("%d",&value);
for(int i=0;i<n;i++) if(a[i]==value) printf("%d",i);break; 参考技术A 定义一个数组,能够容纳足够多的数
定义一个max变量,将数组第一个元素赋值给max
数组下标自增,逐一与max比较
如果大于max,就将这个元素的值赋给max
最后输出元素 参考技术B #include<stdio.h>
main()
int max,a,n,i;
scanf("%d",&n);
scanf("%d",&max);
for(i=0;i<n-1;i++)
scanf("%d",&a);
if(max<a) max=a;
printf("max=%d\n",max);
参考技术C int num[n];
int tmp1,max;
tmp1 = num[0];
for (int i=1; i<n; i++)
if ( tmp1 ? num[i] : tmp1 > num[i] )
max = tmp1;
else max = num[i];
tmp1 = max;
是一个对比循环 参考技术D int num[n];
tmp1 = num[0];
int tmp1,tmp2;
for (int i=1; i<n; i++)
tmp2 = num[i];
tmp1 ? num[i] : tmp1 > tmp2;
参考资料:自己想的
以上是关于怎样用C语言编一个解一元二次方程的程序?的主要内容,如果未能解决你的问题,请参考以下文章
用C语言编写程序,输入一元二次方程的系数a,b,c,计算方程的根,要考虑虚根的情况,求解答