用函数求解二次方程C语言 c语言怎么求二次方程
c语言程序设计 设计一个求解一元二次方程的函数,在主函数中输入方程的系数!!!急!!!!!!!!
/*
十年建站经验, 做网站、成都网站制作客户的见证与正确选择。成都创新互联提供完善的营销型网页建站明细报价表。后期开发更加便捷高效,我们致力于追求更美、更快、更规范。
供参考!
*/
# include stdio.h
# include math.h
void calcu(double a,double b,double c);
int main(void)
{
double a, b, c;
char ch;
do
{
printf("请输入一元二次方程的三个系数:\n");
printf("a=\t");
scanf("%lf", a);
printf("b=\t");
scanf("%lf", b);
printf("c=\t");
scanf("%lf", c);
calcu(a,b,c);
printf("继续(Y/y),输入其他退出: ");
scanf(" %c", ch);
printf("\n");
} while ('y'==ch || 'Y'==ch);
printf("成功退出!\n");
return 0;
}
void calcu(double a,double b,double c)
{
double delta;
double x1, x2;
delta = b*b - 4*a*c;
if (delta 0)
{
x1 = (-b + sqrt(delta)) / (2*a);
x2 = (-b - sqrt(delta)) / (2*a);
printf("有两个解,x1 = %lf, x2 = %lf\n", x1, x2);
}
else if (0 == delta)
{
x1 = x2 = (-b) / (2*a);
printf("有唯一解,x1 = x2 = %lf\n", x1, x2);
}
else
{
printf("无实数解!\n");
}
}
/*
在c++6.0中的运行结果是:
-------------------------
请输入一元二次方程的三个系数:
a= 1
b= -3
c= 2
有两个解,x1 = 2.000000, x2 = 1.000000
继续(Y/y),输入其他退出: y
请输入一元二次方程的三个系数:
a= 1
b= 1
c= 1
无实数解!
继续(Y/y),输入其他退出: y
请输入一元二次方程的三个系数:
a= 1
b= -2
c= 1
有唯一解,x1 = x2 = 1.000000
继续(Y/y),输入其他退出: n
成功退出!
--------------------------------
*/
c语言求一元二次方程的解
c语言一元二次方程编程是#include iostream 。#include cmath。using namespace std。int main()。{float a,b,c;float x1,x2; cinabc;float dlt=b*b-4*a*c;if(dlt=0){x1=-b/2/a+sqrt(dlt)。/2/ax2=-b/2/a-sqrt(dlt)/2/a。
形如x=p或(nx+m)=p(p≥0)的一元二次方程可采用直接开平方的方法解一元二次方程.如果方程化成x²=p的形式,那么可得x=±p;(x²=p,x=±根号p)如果方程能化成(nx+m)=p(p≥0)的形式,那么nx+m=±p。
简洁的语言:
C语言包含的各种控制语句仅有9种,关键字也只有32个,程序的编写要求不严格且以小写字母为主,对许多不必要的部分进行了精简。
实际上,语句构成与硬件有关联的较少,且C语言本身不提供与硬件相关的输入输出、文件管理等功能,如需此类功能,需要通过配合编译系统所支持的各类库进行编程,故c语言拥有非常简洁的编译系统。
提供的控制语句具有结构化特征,如for语句、if...else语句和switch语句等。可以用于实现函数的逻辑控制,方便面向过程的程序设计。
C语言课后题,调用3个函数求2次方程的根,编写程序如下
#includestdio.h
#includemath.h
void zero(float a,float b);
void left();
void right(float a,float b,float c);
void main()
{
float a,b,c,d;
printf("请输入a,b,c的值:\n");
scanf("%f %f %f",a,b,c);
d=b*b-4*a*c;
if(d==0)zero(a,b);
if(d0)left();
if(d0)right(a,b,c);
}
void zero(float a,float b)
{
printf("%f",-b/2*a);
}
void left()
{
printf("no roots!\n");
}
void right(float a,float b,float c)
{
float x1,x2;
x1=(-b+sqrt(b*b-4*a*c))/(2*a);
x2=(-b-sqrt(b*b-4*a*c))/(2*a);
printf("%f %f \n",x1,x2);
}
分享标题:用函数求解二次方程C语言 c语言怎么求二次方程
本文网址:http://scjbc.cn/article/dojjpjs.html