重庆分公司,新征程启航

为企业提供网站建设、域名注册、服务器等服务

c语言求根用三个函数 c语音求根

用C语言求方程的根,用3个函数分别求当大于0、等于0和小于0时的根并输出结果。从主函数中输入abc的值。

给你重写一个你对照看——

为宁县等地区用户提供了全套网页设计制作服务,及宁县网站建设行业解决方案。主营业务为网站制作、成都网站制作、宁县网站设计,以传统方式定制建设网站,并提供域名空间备案等一条龙服务,秉承以专业、用心的态度为用户提供真诚的服务。我们深信只要达到每一位用户的要求,就会得到认可,从而选择与我们长期合作。这样,我们也可以走得更远!

#include "stdio.h"

#include "math.h"

void zero(float a,float b){

printf("x1 = %f\n",-b/2/a);

printf("x2 = %f\n",-b/2/a);

}

void one(float a,float b,float d){

printf("x1 = %f\n",(-b+d)/2/a);

printf("x2 = %f\n",(-b-d)/2/a);

}

void two(float a,float b,float d){

printf("x1 = %f%+fi\n",-b/2/a,d/2/a);

printf("x2 = %f%+fi\n",-b/2/a,-d/2/a);

}

int main(int argc,char *argv[]){

float a,b,c,dlt;

printf("Input a, b, c(R: all)...\n");

scanf("%f%f%f",a,b,c);

if((dlt=b*b-4*a*c)==0)

zero(a,b);

else if(dlt0){

one(a,b,sqrt(dlt));

}

else

two(a,b,sqrt(-dlt));

return 0;

}

运行样例:

有问题续问。

C语言 方程求根 用三个函数分别输出 abc的值从主函数输入

1.

楼主的x()和y()写的一样啊。

2.在x()和y()中的定义

int

x1,x2;应该改为

double

x1,x2;

3.

楼主对b*b-4*a*c0如何处理?

4.scanf("%lf,%lf,%lf",a,b,c);最好改为scanf("%lf%lf%lf",a,b,c);

建议改为下列,对于b*b-4*a*c0的情况输出提示

#includestdio.h

#includemath.h

float

d;

int

main()

{

void

x(double

x,double

y,double

z);

void

y(double

x,double

y,double

z);

double

a,b,c;

scanf("%lf%lf%lf",a,b,c);

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

if(d1e-6)

x(a,b,c);

else

if(d0)

printf("没有实根\n");

else

y(a,b,c);

}

void

x(double

x,double

y,double

z)

{

double

x1,x2;

x1=(-y+sqrt(d))/(2*x);

x2=(-y-sqrt(d))/(2*x);

printf("%8.4f,%8.4f",x1,x2);

}

void

y(double

x,double

y,double

z)

{

double

x1,x2;

x1=x2=-y/(2*x);

printf("%8.4f,%8.4f",x1,x2);

}

C语言 方程求根 用三个函数分别输出 abc的值从主函数输入

1. 楼主的x()和y()写的一样啊。

2.在x()和y()中的定义 int x1,x2;应该改为 double x1,x2;

3. 楼主对b*b-4*a*c0如何处理?

4.scanf("%lf,%lf,%lf",a,b,c);最好改为scanf("%lf%lf%lf",a,b,c);

建议改为下列,对于b*b-4*a*c0的情况输出提示

#includestdio.h

#includemath.h

float d;

int main()

{ void x(double x,double y,double z);

void y(double x,double y,double z);

double a,b,c;

scanf("%lf%lf%lf",a,b,c);

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

if(d1e-6)

x(a,b,c);

else if(d0)

printf("没有实根\n");

else

y(a,b,c);

}

void x(double x,double y,double z)

{

double x1,x2;

x1=(-y+sqrt(d))/(2*x);

x2=(-y-sqrt(d))/(2*x);

printf("%8.4f,%8.4f",x1,x2);

}

void y(double x,double y,double z)

{

double x1,x2;

x1=x2=-y/(2*x);

printf("%8.4f,%8.4f",x1,x2);

}


文章名称:c语言求根用三个函数 c语音求根
本文来源:http://cqcxhl.cn/article/ddjohch.html

其他资讯

在线咨询
服务热线
服务热线:028-86922220
TOP