【求助】麻烦大神帮忙看看这行代码的错误
# include <stdio.h># include <math.h>
int main(void)
{
int a = 1;
int b = 5;
int c = 6;
double delta;
double x1;
double x2;
delta = b*b-4*a*c;
if(deita > 0)
{
x1 = (-b + sqart(delta)) / (2*a);
x2 = (-b - sqart(delta)) / (2*a);
printf("该一元二次方程有两个解,x1 = %f, x2 = %f\n", x1, x2);
}
else if (deita == 0)
{
x1 = (-b) /(2*a);
x2 = x1;
printf("该一元二次方程有唯一解,x1 = x2 = %f\n",x1);
}
else
{
printf("无解\n");
}
麻烦各位大神了
自古一楼归楼主 二楼归我:$ 本帖最后由 Antergone 于 2016-1-18 12:44 编辑
楼主,代码一眼看上去各种问题,我觉得你调试下 什么问题都能解决?
1.include 那里空格?
2.int main 返回值在哪里?
3. delta deita?
4. sqart 你确定平方根是这个?
5.double 打印的时候格式控制符是lf还是f?
不要伸手就问为什么,放到编译器自己调试下,动过手再来问为什么
友情提示:如果linux编译请带上 lm参数gcc test.c -lm Antergone 发表于 2016-1-18 12:38
楼主,代码一眼看上去各种问题,我觉得你调试下 什么问题都能解决?
1.include 那里空格?
2.int main 返回 ...
非常感谢,我就一小白,刚自学,所以调试半天也不知道哪错了
总之,非常感谢~~~~~ 本帖最后由 xiaoye 于 2016-1-18 13:25 编辑
正确:
# include <stdio.h>
# include <math.h>
int main(void)
{
int a = 1;
int b = 5;
int c = 6;
double delta;
double x1;
double x2;
delta = b*b-4*a*c;
if(delta > 0)
{
x1 = (-b + sqrt(delta)) / (2*a);
x2 = (-b - sqrt(delta)) / (2*a);
printf("该一元二次方程有两个解,x1 = %lf, x2 = %lf\n", x1, x2);
}
else if (delta == 0)
{
x1 = (-b) /(2*a);
x2 = x1;
printf("该一元二次方程有唯一解,x1 = x2 = %lf\n",x1);
}
else
{
printf("无解\n");
}
return 0;
} xiaoye 发表于 2016-1-18 13:18
正确:
谢谢您的认真指导 简直是6的不行啊!支持红客联盟。
页:
[1]