| 网站首页 | 业界新闻 | 群组 | 人才 | 下载频道 | 博客 | 代码贴 | 编程论坛
共有 342 人关注过本帖
标题:怎么老是少一个if。。。我真不知道那里少了
只看楼主 收藏
look!UFO
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2018-3-11
结帖率:0
  已结贴   问题点数:20  回复次数:7   
怎么老是少一个if。。。我真不知道那里少了
#include <stdio.h>
int fun(int x){
   return 2*x*x*x-4*x*x+3*x-6;
}
int main(){
    double a,b;
    double i,p,q;
        scanf("%lf %lf",&a,&b);
    for(i=(a+b)/2;;i=(a+b)/2){
            p=fun(i)*fun(a);
            q=fun(i)*fun(b);
           if(p<0)
         b=i;
           else
            if(q<0)
            a=i;
                    else
                if(p==0);break;
            printf("%.2lf",i);
            else
                    if(q==0)break;
                         printf("%.2lf",i);
    }
    return 0;
}
2018-03-11 15:21
李晨经纪人
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:6
帖 子:175
专家分:848
注 册:2018-2-14
  得分:7 
不确定你这程序是什么样的要求。估计 是
 if(p==0);break;
   printf("%.2lf",i);
   else
      if(q==0)break;
           printf("%.2lf",i);
改成
if(p==0)
{   printf("%.2lf",i);break;}
else
  if(q==0)
{printf("%.2lf",i);break; }
2018-03-11 15:53
look!UFO
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2018-3-11
  得分:0 
回复 2楼 李晨经纪人
我试了一下没有用,我急了把那个else给删除了,结果碰巧是对的,但是我还是不明白那个else是怎么就没有if。。。就是第二个if(q==0)前的那个else
2018-03-11 16:37
will丶
Rank: 5Rank: 5
等 级:职业侠客
威 望:5
帖 子:84
专家分:353
注 册:2015-10-19
  得分:7 
你这程序写的叫一个迷,for循环里写的什么东西,后面是分情况输出么,是个什么规则,能不能把完整题目说一下,你这一个实属难猜

腾空类星陨,遥望若花生。
2018-03-11 17:03
李晨经纪人
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:6
帖 子:175
专家分:848
注 册:2018-2-14
  得分:0 
不晓得你的程序想要怎么输出,不过帮你排版分析下你的程序
 if(p<0)                      //如果p<0时b=i
      b=i;
  else                       //对应上一个if
      if(q<0)                //如果p>=0&&q<0时a=i
          a=i;
      else                   //对应上一个if
          if(p==0);          //如果p==0 && q>=0时什么也不干。注意你的if后面有个分号
  break;                     //跳出循环。上面的if  else嵌套也结束了
  printf("%.2lf",i);           
  else                       //上面的嵌套已结束,这个else 没有对应的if
      if(q==0)
          break;
  printf("%.2lf",i);
  你的程序很乱。而且int fun(int x)应该改成double fun(double x)
2018-03-11 17:16
LiGoudan
Rank: 3Rank: 3
等 级:论坛游侠
威 望:2
帖 子:20
专家分:148
注 册:2018-2-28
  得分:7 
个人观点:建议多看优秀代码,注意代码排版风格!不明白可以去问度娘
2018-03-11 23:23
look!UFO
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2018-3-11
  得分:0 
回复 6楼 LiGoudan
嗯,刚开始学习,谢谢。
2018-03-12 14:53
look!UFO
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2018-3-11
  得分:0 
回复 5楼 李晨经纪人
我懂了,我对break的用法有误解
2018-03-12 14:54







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

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