为什麼从else if开始if else语句执行顺序不了啊。。。。

4205人阅读
Java基础(43)
突然间想到这个问题:在if-else if- else语句块中,如果所有if中的条件都为真,是每个if对应的语句都执行呢?还是只执行第一个条件为真的if对应的语句呢?答案是后者。下面是示例代码:
由此总结if-else if- else语句的执行流程:遇到第一个条件为真的if语句,执行对应语句后就退出if-else if- else语句,不再检测后面的if条件是否为真;如果没有遇到条件为真的if语句,就执行else对应的语句。
&&相关文章推荐
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:159575次
积分:3354
积分:3354
排名:第9051名
原创:154篇
译文:20篇
评论:64条
文章:13篇
阅读:6980
阅读:8871
阅读:7008
文章:44篇
阅读:57799
文章:18篇
阅读:17263
(1)(2)(3)(1)(6)(8)(4)(1)(13)(6)(11)(15)(6)(1)(2)(13)(2)(28)(22)(8)(18)(2)(1)扫二维码下载作业帮
1.75亿学生的选择
下载作业帮安装包
扫二维码下载作业帮
1.75亿学生的选择
C语言中,if……else if……else if……else if……else语句中,可以不用else结尾而用else if结尾吗?
扫二维码下载作业帮
1.75亿学生的选择
可以 没有else 相当于else 后面空
就是当其他情况时不执行任何分支
为您推荐:
其他类似问题
扫描下载二维码扫二维码下载作业帮
拍照搜题,秒出答案,一键查看所有搜题记录
下载作业帮安装包
扫二维码下载作业帮
拍照搜题,秒出答案,一键查看所有搜题记录
执行了if就不再判断后面的else
喜洋洋0517
扫二维码下载作业帮
拍照搜题,秒出答案,一键查看所有搜题记录
if(){...}else if{...}else if{...}else if{...}......叫条件分支语句,永远只执行其中之一或一条也不执行.
为您推荐:
其他类似问题
扫描下载二维码欢迎加入我们,一同切磋技术。 &
用户名: &&&
密 码: &
共有 5491 人关注过本帖
标题:我写的一个程序,为什么只执行if后面的,一直不执行else后面的
等 级:论坛游民
帖 子:12
专家分:10
结帖率:100%
&&已结贴√
&&问题点数:20&&回复次数:11&&&
我写的一个程序,为什么只执行if后面的,一直不执行else后面的
#include &stdio.h&
#include &math.h&
int main ()
&&& float a,s;
&&& scanf(&%f&,&a);
&&& if (0&a&1000)
&&&&&& s=sqrt(a);
&&&&&& printf(&s=%f&,s);&&&
&&&&&& printf(&please retype it again.&);
&&& return 0;
还有就是当a的平方根是小数的时候,怎样舍去小数。
搜索更多相关主题的帖子:
来 自:Asia
等 级:贵宾
威 望:10
帖 子:1234
专家分:3865
&&得分:10&
程序代码:#include &stdio.h&
#include &math.h&
int main ()
&&& scanf(&%f&,&a);
&&& if (<font color=#&a&<font color=#0)
&&&&&& printf(&s=%d\n&,(int)sqrt(a));//改为这样!!&&
&&&&&& printf(&please retype it again.\n&);
&&& return <font color=#;
因为我是菜鸟,所以应该被骂!
细节+坚持=成功!
等 级:蝙蝠侠
帖 子:178
专家分:738
&&得分:10&
if (0&a&1000)
&&&&&& s=sqrt(a);
&&&&&& printf(&s=%f&,s);&&&
&&&&&& printf(&please retype it again.&);
这风格实在不敢恭维
if ((0&a) && (a&1000))
&&&&&& s=sqrt(a);
&&&&&& printf(&s=%f&,s);&&&
&&&&&& printf(&please retype it again.&);
不太明白 你的编译器怎么能够顺利的编译呢????
来 自:Asia
等 级:贵宾
威 望:10
帖 子:1234
专家分:3865
回复 2楼 我叫沃恩
我的代码有错,判断条件的问题:a&0&&a&1000!我没细看!!!
因为我是菜鸟,所以应该被骂!
细节+坚持=成功!
等 级:侠之大者
帖 子:143
专家分:424
是不是你输入的数字都符合第一个if就不执行else了?
等 级:黑侠
帖 子:215
专家分:609
在VC中直接报错,不报错的话,前面的1&a无论a为何值都只能返回0或1,永远小于1000,所以不可能有else
等 级:蝙蝠侠
帖 子:264
专家分:841
if (0&a&1000)&&&//条件不能这么写a&0&&a&1000
&&&&&&&&&s=sqrt(a);&&&&&&&&&//if后面要执行的语句块 应该用大括弧括起来
&&&&&&&&printf(&s=%f&,s);
等 级:新手上路
#include &stdio.h&
#include &math.h&
int main ()
&&& float a,s;
&&& scanf(&%f&,&a);
&&& if (a&=0&&a&=100)
&&& {s=sqrt(a);
&&& printf(&s=%f&,s);}&&&
&&&&&& printf(&please retype it again.&);
&&& return 0;
运行了&&应该没错
等 级:论坛游民
帖 子:12
专家分:10
回复 3楼 wyw
自己自学的,呵呵
等 级:论坛游民
帖 子:12
专家分:10
回复 2楼 我叫沃恩
版主,这个
&printf(&s=%d\n&,(int)sqrt(a));最后为什么是这样的,从来没见过这样的,但我上机试了下,是对的。是我还没学到这里来吗
版权所有,并保留所有权利。
Powered by , Processed in 0.042750 second(s), 8 queries.
Copyright&, BCCN.NET, All Rights Reserved114网址导航}

我要回帖

更多关于 if和else都执行 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信