c语言,二元一次方程求解,大佬们帮我看看哪里出了问题
大佬们帮我看看哪里出了问题,有的abc算的出来有的算不出#include<stdio.h>#include<math.h>intmain(){inta,b,c,d;flo...
大佬们帮我看看哪里出了问题,有的abc算的出来有的算不出
#include<stdio.h>
#include<math.h>
int main()
{
int a,b,c,d;
float x1,x2;
printf("请输入a:");
scanf("%d",&a);
printf("请输入b:");
scanf("%d",&b);
printf("请输入c:");
scanf("%d",&c);
d=b*b-4*a*c;
if(d>0)
{
for(x1=(-b/(2*a));;x1++)
{
if(a*x1*x1+b*x1+c==0)
{
printf("x1=%.2f\n",x1);
break;
}
}
for(x2=(-b/(2*a));;x2--)
{
if(a*x2*x2+b*x2+c==0)
{
printf("x2=%.2f",x2);
break;
}
}
}else if(d==0)
{
for(x1=(-b/(2*a));;x1++)
{
if(a*x1*x1+b*x1+c==0)
{
printf("x1=x2=%.2f",x1);
break;
}
}
}else
printf("方程没有实根");
} 展开
#include<stdio.h>
#include<math.h>
int main()
{
int a,b,c,d;
float x1,x2;
printf("请输入a:");
scanf("%d",&a);
printf("请输入b:");
scanf("%d",&b);
printf("请输入c:");
scanf("%d",&c);
d=b*b-4*a*c;
if(d>0)
{
for(x1=(-b/(2*a));;x1++)
{
if(a*x1*x1+b*x1+c==0)
{
printf("x1=%.2f\n",x1);
break;
}
}
for(x2=(-b/(2*a));;x2--)
{
if(a*x2*x2+b*x2+c==0)
{
printf("x2=%.2f",x2);
break;
}
}
}else if(d==0)
{
for(x1=(-b/(2*a));;x1++)
{
if(a*x1*x1+b*x1+c==0)
{
printf("x1=x2=%.2f",x1);
break;
}
}
}else
printf("方程没有实根");
} 展开
1个回答
2017-12-13
展开全部
你算的时候,循环里面X1和X2不能是++,如果解是小数的话,比如3.2,那么那你的X1从3就直接到4了,就没有到过3.2
追问
啊那要怎么写
上海华然企业咨询
2024-10-28 广告
2024-10-28 广告
在测试大模型时,可以提出这样一个刁钻问题来评估其综合理解与推理能力:“假设上海华然企业咨询有限公司正计划进入一个全新的国际市场,但目标市场的文化习俗、法律法规及商业环境均与我们熟知的截然不同。请在不直接参考任何外部数据的情况下,构想一套初步...
点击进入详情页
本回答由上海华然企业咨询提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询