| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 972 人关注过本帖
标题:第三个else时为什么加了个冒号才正确,大师们看看呗
只看楼主 加入收藏
lbt001
Rank: 1
等 级:新手上路
帖 子:26
专家分:4
注 册:2015-2-3
结帖率:62.5%
收藏
 问题点数:0 回复次数:8 
第三个else时为什么加了个冒号才正确,大师们看看呗
# include <stdio.h>
# include <math.h>
int main(void)
{
    int a=1;
    int b=2;
    int c=3;
    double x1;
    double x2;
    int deblt;
    deblt=b*b-4*a*c;
    if(deblt>0)
    {
       x1=-b+sqrt(deblt)/2*a;
       x2=-b-sqrt(deblt)/2*a;
       printf("方程的解为x1=%d,x2=%d\n",x1,x2);
    }
    else if(deblt==0)
    {
        x1=(-b)/2*a;
        x2=x1;
        printf("x1=x2=%d\n",x1,x2);
    }
    else (deblt<0);
    {
        printf("该方程无解\n");
    }
    return 0;
}
搜索更多相关主题的帖子: include double 
2015-02-05 21:24
八画小子
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:37
帖 子:709
专家分:2063
注 册:2010-11-11
收藏
得分:0 
回复 楼主 lbt001
最后一个else是不需要条件的。
2015-02-05 21:38
独步天涯2
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2012-3-21
收藏
得分:0 
二楼正解!
2015-02-05 22:55
lbt001
Rank: 1
等 级:新手上路
帖 子:26
专家分:4
注 册:2015-2-3
收藏
得分:0 
回复 2楼 八画小子
不需要条件就要加上冒号吗,懵懂
2015-02-06 16:08
执笔画江山
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:3
帖 子:265
专家分:1010
注 册:2015-1-13
收藏
得分:0 
if  else if ...else
记得  else就是否定了所有的 不需要条件  这代表跟前面的是完全相反的  
 如果你想加条件 也行  那就用  else if (deblt<0)  表示并列关系
这样你试下  应该没问题

授人以鱼,不如授人以渔
2015-02-06 16:32
李兰加洛斯
Rank: 1
等 级:新手上路
帖 子:2
专家分:3
注 册:2015-2-7
收藏
得分:0 
格式是
if (表达式)

else

===========
if (表达式)

else if (表达式)
============
else 后面是不能跟表达式的,建议用else if
2015-02-07 11:16
embed_xuel
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:58
帖 子:3845
专家分:11385
注 册:2011-9-13
收藏
得分:0 
回复 4楼 lbt001
冒号,分号,分不清楚吗?

总有那身价贱的人给作业贴回复完整的代码
2015-02-07 11:18
编程小少年
Rank: 1
等 级:新手上路
帖 子:5
专家分:3
注 册:2015-1-22
收藏
得分:0 
回复 2楼 八画小子
是不是可以这样理解,两个else的其实是一个else结构?第一个else可以删掉的么?
2015-02-07 15:14
wmf2014
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:216
帖 子:2039
专家分:11273
注 册:2014-12-6
收藏
得分:0 
(deblt<0);实际上是个关系运算,是一个完整语句,所以必须加分号,否则编译通不过。由于加分号,deblt<0的这个分支就执行完了,所以不管方程有无解,最后都会显示“该方程无解”,正确的应该如下:
    else //(deblt<0);注释掉
    {
        printf("该方程无解\n");
    }
    return 0;
}

能编个毛线衣吗?
2015-02-07 16:32
快速回复:第三个else时为什么加了个冒号才正确,大师们看看呗
数据加载中...
 
   



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

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