c语言判断一个一元二次方程的情况并求恨
来源:学生作业帮助网 编辑:作业帮 时间:2024/05/10 11:53:11
#include#includeintmain(void){inta,b,c;//定义一元二次方程的三个数值;printf("请依次输入一元二次方程的三个参数abc,中间以空格隔开\n");scanf
你声明的变量a,b,c都为double,所以用scanf时应用"%lf",还有,你为什么要用do{}while();循环呢,这样,不管你输入了a的值为多少,执行完while(a=0);之后,a的值就为
#include"stdio.h"#include"math.h"/*求一元二次方程ax*x+bx+c=0的解*/main(){floata,b,c,x1,x2,d;printf("请输入a:");s
//只一处有错,还有一个注意输入格式.#include#includeintmain(){doublep,q,x1,x2,disc,a,b,c;scanf("%lf,%lf,%lf",&a,&b,&c
scanf("%f,%f,%f",a,b,c);a,b,c前加个&符号还有x1=(e-b)/2a,要x1=(e-b)/(2*a)
#include#includeintmain(){inta,b,c,x,p,x1,x2;printf("输入三个实数:\n");scanf("%d%d%d",&a,&b,&c);p=b*b-4*a*
lf%错了,应该是%lf
很高兴为您解答.原代码中的scanf和printf中的%要放在d和lf的前面才对,改正后运算无误~#include#includevoidmain(){doublex1;//x1,x2分别为方程的2个
(1)当b²-4ac
首先,把scanf里面的%f改成%lf,printf里面不用管,其次,b*b要大于4*a*c才会有结果的.
double改做float再问:yiyuanercifangcheng.cpp(25):warningC4244:'=':conversionfrom'int'to'float',possiblelo
#include#includeintmain(){floatf(float);floatm=0;inta=-10,b=10;//a,b为大致区间可以自己修改while(fabs(f(m))>
TDM-GCC64位元编译无误.再问:能不能输入1,2,1之后按回车?,不换行行不行?再答:可以输入121,可以不换行。如果你想要1,2,1得到正确结果,输入语句要改为scanf("%lf,%lf,%
您好!很高兴为您解答.如果刨除输入格式的问题,输入的那一行“scanf("%1f,%1f,%1f",&a,&b,&c);”应该改为“scanf("
那要看抛物线的对称轴就能判断AB的正负,就是一个口诀“左同右异”还有抛物线向下a是负的向上是正的,b就是我刚说的那个口诀,c就要看抛物线交y轴的正半轴还是负半轴,如果是交正半轴c就是正数,若是交负半轴
/*结束程序请按“Ctrl+z”*/#include#includeintmain(){floata,b,c;doubled,x1,x2;printf("Enterthecoefficient
#include<stdio.h>#include<math.h>int main(){ double a,b
#include#includevoidmain(){floata,b,c,x,delt;couta>>b>>c;delt=b*b-4*a*c;if(delt>0)cout
double类型的不能直接用==0来判断,用fabs(a)
#include"stdio.h"#include"math.h"#include"windows.h"voidmain(){floata,b,c;printf("----计算一元二次方程ax^2+b