| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 435 人关注过本帖
标题:想让看看这个问题在哪 为什么无法计算出函数的值
只看楼主 加入收藏
瞎瞎瞎瞎起名
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2015-3-26
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:6 
想让看看这个问题在哪 为什么无法计算出函数的值
#include<stdio.h>
#include<math.h>
int main()
{
    double a,b,c,d,x1,x2;
    printf("请输入a,b,c系数\n");
    scanf("%lf%lf%lf",&a,&b,&c);
    d==b*b-4*a*c;
    if(a==0)
    {
        x1=(-c)*(1.0/b);
        printf("%lf",x1);
        
    }
        else if(d==0)
        {
        x1=(-b)/((1.0)/(2*a));
        printf("%lf",x1);
        }
          else if(d>0)
         {
          x1=(-b)*(1.0/(2*a))+sqrt(d)/(2*a);
          x2=(-b)*(1.0/(2*a))-sqrt(d)/(2*a);
          printf("%lf,%lf",x1,x2);   
         }
         
          else
          {
               x1=(-b)*(1.0/(2*a)),x2=(-b)*(1.0/(2*a));
               d=sqrt(-d)/(2*a);
                printf("%lf+%lfi,%lf-%lfi",x1,d,x2,d);
            }
}
搜索更多相关主题的帖子: include double 
2015-03-29 09:38
jj3625
Rank: 1
等 级:新手上路
帖 子:2
专家分:6
注 册:2015-3-29
收藏
得分:4 
表示我是刚自学的菜鸟  求大神带着学。
2015-03-29 09:49
执笔画江山
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:3
帖 子:265
专家分:1010
注 册:2015-1-13
收藏
得分:4 
程序代码:
#include<stdio.h>
#include<math.h>
int main()
{   
    double a,b,c,d,x1,x2;
    printf("请输入a,b,c系数\n");
    scanf("%lf%lf%lf",&a,&b,&c);
    d=b*b-4*a*c;
    if(a==0)
    {
        x1=(-c)*(1.0/b);
        printf("%lf\n",x1);
    }
    else
    {
        if(d==0)
        {
            x1=(-b)/((1.0)/(2*a));
            printf("%lf\n",x1);
        }
        else if(d>0)
        {
            x1=(-b)*(1.0/(2*a))+sqrt(d)/(2*a);
            x2=(-b)*(1.0/(2*a))-sqrt(d)/(2*a);
            printf("%lf,%lf\n",x1,x2);  
        }

        else
        {
             x1=(-b)*(1.0/(2*a));
             x2=(-b)*(1.0/(2*a));
             d=sqrt(-d)/(2*a);
             printf("%lf+%lfi,%lf-%lfi\n",x1,d,x2,d);
        }
    } 

    return 0;
} 



[ 本帖最后由 执笔画江山 于 2015-3-30 14:10 编辑 ]

授人以鱼,不如授人以渔
2015-03-29 10:48
fj9666
Rank: 1
等 级:新手上路
帖 子:2
专家分:4
注 册:2015-3-29
收藏
得分:4 
回复 3楼 执笔画江山
你没看清楚,他的逻辑是正确的,不过是有些小问题,解决了就能求值。
2015-03-29 11:00
fj9666
Rank: 1
等 级:新手上路
帖 子:2
专家分:4
注 册:2015-3-29
收藏
得分:0 
第9行的"=="是等于,不是赋值,改成"="。
第17行应该这样写 “x1=(-b)/(2*a);”
倒数第四行把两处%lf+%lfi中的i去掉。
最后再把每个输出结果加个换行符使结果可读性更强就行了。
大多数编译软件都会自动在后面加上 返回值 ,不过为了规范还是要加上。


[ 本帖最后由 fj9666 于 2015-3-29 11:19 编辑 ]
2015-03-29 11:06
半世烟尘
Rank: 1
等 级:新手上路
帖 子:5
专家分:4
注 册:2015-3-23
收藏
得分:4 
你的if else嵌套是一种使用方法,但是对这程序就用不对了。d=0和d>0以及最后的一个else应该是属于一个else里面的。这一块和第一个if分属2块区域。
2015-03-29 11:27
tlliqi
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:204
帖 子:15453
专家分:65956
注 册:2006-4-27
收藏
得分:4 
书写一定要规范
2015-03-29 11:28
快速回复:想让看看这个问题在哪 为什么无法计算出函数的值
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.046605 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved