永发信息网

#include <stdio.h> #include <math.h> void main() { int a,b,c; double x1,x2,disc; disc=b*

答案:2  悬赏:0  手机版
解决时间 2021-02-03 03:23
#include
#include
void main()

{
int a,b,c;
double x1,x2,delta;
delta=b*b-4*a*c;
printf("请输入函数值(以空格分开):");
scanf("%d,%d,%d",&a,&b,&c);
if(a==0)
{
printf("该方程不是一元二次方程");
}
else
{
if(delta<0)
{
printf("该方程无解\n");
}
else if(delta==0)
{
x1=(-b)/(2*a);
printf("方程有一个解:%lf\n",x1);
}
else
{
x1=(-b+sqrt(delta))/(2*a);
x2=(-b-sqrt(delta))/(2*a);
printf("该方程有两个解:%lf,%lf\n",x1,x2);
}
}
}
不是方程无解就是算不出数,求解那里错了
最佳答案
delta=b*b-4*a*c; delta的计算要放到scanf后面,要输入系数后才能计算。
输入三个系数要用逗号分割,而不是用空格分隔开。
全部回答
程序执行顺序的问题,现在的代码中delat值在初始化之后就不会再改变了,应该在输入a,b,c值之后再计算delat;下面解方程的时候也应该先计算x1,x2值然后在输出,像这样: #include #include void main() { float a,b,c; double delat=0; double x1,x2; printf("输入三个数"); scanf("%f,%f,%f",&a,&b,&c); delat=b*b-4*a*c; if(delat>0) { x1=(-b+sqrt(delat))/(2*a); x2=(-b-sqrt(delat))/(2*a); printf("原方程有两个不同的解,x1=%f,x2=%f\n",x1,x2); } else if(delat==0) { x1=(-b)/(2*a); x2=x1; printf("原方程有两个相同的解,x1=x2=%f\n",x1,x2); } else printf("原方程无解\n"); } 还有a,b,c如果是整型量的话应该在计算delat,x1,x2时候声明类型转换,否则会按整数计算,结果不正确了,把a,b,c定义成浮点型或者双精度型就好了
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
旋挖钻机的动力头怎么跟桅杆连接的?
长沙大王山离离市区多远
人的经历都是命中注定的么?
吃竹叶茶,影响血压吗?
我被电动车撞了,但好长时间了,事故鉴定都没
名扬车行在什么地方啊,我要过去处理事情
想给妈妈织条围巾,什么花好看?我现在有那种粗
项目经理应该具备哪些能力
水浒传 好词好句
北京灵智教育在哪里啊,我有事要去这个地方
志愿服务属于社会实践还是学生工作
2016年四星级高中定向转统招计划录取分数线
三菱帕杰罗IO
百变小樱小可的翅膀除了白色还能换什么颜色
【乐去】乐在中作文
推荐资讯
辽宁工程技术大学和成都理工大学哪个好 测绘
一组数据50个,分组后落在某一小组内的频数是1
万通二手车交易中心(潍坊高密市)怎么去啊,我
锅炉水冷壁管的厚度是多少新疆天山热水2吨
新馨园母婴服务培训学校怎么去啊,有知道地址
润泰加油站地址在哪,我要去那里办事
天时缘酒,五十度,1905多少钱一瓶?
洞洞惺惺的意思是什么啊?知道的请说下!
钩盾的意思是什么啊?知道的请说下!
增砖添瓦的意思是什么啊?知道的请说下!
绿能照明地址在哪,我要去那里办事
雅姿形象设计地址在什么地方,想过去办事
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?