c语言问题,本人新手,编了一个解方程的小程序,不知哪里出错,望指教。
#include<stdio.h>#include<math.h>intmain(void){doublea;doubleb;doublec;doubledelta;do...
# include <stdio.h>
# include <math.h>
int main(void)
{
double a;
double b;
double c;
double delta;
double x1;
double x2;
delta = b*b - 4ac;
printf("请依次输入a,b,c的值(中间用空格间隔):");
scanf("%lf %lf %lf",&a,&b,&c);
if (delta > 0)
{
x1 = (-b + sqrt(delta))/2*a;
x2 = (-b - sqrt(delta))/2*a;
printf("有两个解:x1 = %lf,x2 = %lf",x1,x2);
}
else if (delta == 0)
{
x2 = x1 = (-b + sqrt(delta))/2*a;
printf("有一个解:x1 = x2 =%lf",x1);
}
else if (delta < 0)
{
printf("无解");
}
return 0;
} 展开
# include <math.h>
int main(void)
{
double a;
double b;
double c;
double delta;
double x1;
double x2;
delta = b*b - 4ac;
printf("请依次输入a,b,c的值(中间用空格间隔):");
scanf("%lf %lf %lf",&a,&b,&c);
if (delta > 0)
{
x1 = (-b + sqrt(delta))/2*a;
x2 = (-b - sqrt(delta))/2*a;
printf("有两个解:x1 = %lf,x2 = %lf",x1,x2);
}
else if (delta == 0)
{
x2 = x1 = (-b + sqrt(delta))/2*a;
printf("有一个解:x1 = x2 =%lf",x1);
}
else if (delta < 0)
{
printf("无解");
}
return 0;
} 展开
4个回答
展开全部
# include <stdio.h>
# include <math.h>
void main()
{
double a;
double b;
double c;
double delta;
double x1;
double x2;
delta=b*b-4*a*c;
printf("请依次输入a,b,c的值(中间用空格间隔):");
scanf("%lf %lf %lf",&a,&b,&c);
if (delta>0)
{
x1=(-b+sqrt(delta))/2*a;
x2=(-b-sqrt(delta))/2*a;
printf("有两个解:x1=%lf,x2=%lf",x1,x2);
}
else if (delta==0)
{
x2=x1=(-b+sqrt(delta))/2*a;
printf("有一个解:x1=x2=%lf",x1);
}
else if (delta<0)
{
printf("无解");
}
}
首先 你的输入状态好像有些不是英文状态 我已帮你改过
还有就是4ac 不能这样写
c语言环境没那么聪明
# include <math.h>
void main()
{
double a;
double b;
double c;
double delta;
double x1;
double x2;
delta=b*b-4*a*c;
printf("请依次输入a,b,c的值(中间用空格间隔):");
scanf("%lf %lf %lf",&a,&b,&c);
if (delta>0)
{
x1=(-b+sqrt(delta))/2*a;
x2=(-b-sqrt(delta))/2*a;
printf("有两个解:x1=%lf,x2=%lf",x1,x2);
}
else if (delta==0)
{
x2=x1=(-b+sqrt(delta))/2*a;
printf("有一个解:x1=x2=%lf",x1);
}
else if (delta<0)
{
printf("无解");
}
}
首先 你的输入状态好像有些不是英文状态 我已帮你改过
还有就是4ac 不能这样写
c语言环境没那么聪明
追问
谢谢了。但是请你试一试呢,为什么我的程序没有报错,但是输进去的无论是那个值,都显示无解。
展开全部
你没定义那些变量就使用了,肯定会报错,再一个,就是 delta = b*b - 4ac;中的4ac应该改为4*a*c
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
如果你是拷贝的,那么第一个算是4ac不对吧~是不是着急了没打“*”~
scanf("%lf %lf %lf",&a,&b,&c); 这个用%f就可以了吧~
scanf("%lf %lf %lf",&a,&b,&c); 这个用%f就可以了吧~
追问
还是有问题啊
追答
我所学的开头这样写的# include
# include
void int……
我还想确定下,你的数据是整型还是实型,感觉是int和double冲突了~我也是菜鸟一枚,希望能帮到你~
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
4abc 没有定义,如果是4*a*b*c 话,要把乘号(*)加进去
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询