发布网友 发布时间:12小时前
共2个回答
热心网友 时间:2024-10-22 08:39
#include <stdio.h>#include <math.h> //因为程序中用到了sqrt这个数学函数,所以需要包含进math.hmain(){ float a, b, c, x1, x2, m, p, q, delta; printf("Please enter the coefficient for the quadratic function:"); printf("a="); scanf("%f", &a); printf("b="); scanf("%f", &b); //去掉格式字符串里的\n,下同 printf("c="); scanf("%f", &c); delta = b*b - 4 * a*c; if (a == 0)//把a=0替换为a==0 { if (b == 0)//把b=0替换为b==0 printf("x doesn't exist."); else { x1 = -c / b; printf("x="); printf("%f\n", x1);//把&x1替换为x1,输出变量的值不需对变量求地址。下同。 } } else { if (delta >= 0) { x1 = (-b + sqrt(delta)) / (2 * a); x2 = (-b - sqrt(delta)) / (2 * a); printf("a="); printf("%f\n", x1); printf("a="); printf("%f\n", x2);//连续多个printf语句可以换成一句 printf("x1=%f\nx2=%f\n",x1,x2); }else{ m = -b / (2 * a); p = sqrt(-delta) / (2 * a);//delta前要加一个负号,否则运行会出错,下同 q = -sqrt(-delta) / (2 * a);//这里其实可以写的更简单 q=-p; printf("x1="); printf("%f", m); printf("+"); printf("%f", p); printf("i\n"); printf("x2="); printf("%f", m); printf("+"); printf("%f", q); printf("i\n");//这连续多个printf语句可以写成一句 printf("x1=%f+%fi\nx2=%f-%fi\n",m,p,m,p); } }}以上就是在你的代码基础上修改的。追问你回答的是我的问题么
热心网友 时间:2024-10-22 08:40
把int d 移到前面去。