cheng1107


私信TA

用户名:chengrui1990

访问量:4882

签 名:

学习走起

等  级
排  名 15948
经  验 773
参赛次数 0
文章发表 9
年  龄 27
在职情况 在职
学  校 理工大学
专  业

  自我简介:

解题思路:





注意事项:





参考代码:

#include <stdio.h>

#include <math.h>

#define MIN_POS   1e-6

#define MAX_NEG   (-1e-6)

//μ± b*b-4*a*c > 0ê± 

void root_real(float a,float b,float c)

{

float m = -b/(2*a);

float n = b*b-4*a*c;

if(n > MIN_POS)

{

n = sqrt(n)/(2*a);

printf("x1=%.3f\n",m+n);

printf("x2=%.3f\n",m-n);

}

//μ± b*b-4*a*c == 0ê± 

void root_zero(float a,float b,float c)

{

float m = -b/(2*a);

float n = b*b-4*a*c;


if((n < MIN_POS)&&(n > MAX_NEG))

{

printf("x1=%.3f\n",m);

printf("x2=%.3f\n",m);

}

//μ± b*b-4*a*c < 0ê± 

void root_image(float a,float b,float c)

{

float m = -b/(2*a);

float n = b*b-4*a*c;

if(n < MAX_NEG)

{

n = sqrt(-n)/(2*a);;

printf("x1=%.3f+%.3fi\n",m,n);

printf("x2=%.3f-%.3fi\n",m,n);

}


int main(void)

{

float a;

float b;

float c;

if((scanf("%f%f%f",&a,&b,&c) == 3)&&((a > MIN_POS)||(a < MAX_NEG)))

{

root_real(a,b,c);

  root_zero(a,b,c);

  root_image(a,b,c);

}

else

{

printf("the type of input is wrong\n");

printf("please input again!\n");

}


return 0;

}


 

0.0分

0 人评分

看不懂代码?想转换其他语言的代码? 或者想问其他问题? 试试问问AI编程助手,随时响应你的问题:

编程语言转换

万能编程问答

代码解释器

  评论区