A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

同学们,今天我们学习了流程控制语句

今日需要掌握的知识有
1、if ,if...else,if...else if...else  三种if语句的区别

2、default 一定要放在最后么?  用自己的话来解释下case的穿透

3、三种循环语句的区别?什么时候用for语句,什么时候while语句?

27 个回复

正序浏览
唐杰

1、if ,if...else,if...else if...else  三种if语句的区别
单if语句只有一个条件判断,true或false; if-else语句是二选一个条件执行, if-else,else-if为N选一个条件执行.

2、default 一定要放在最后么?  用自己的话来解释下case的穿透

default不一定要放在最后,无论顺序放哪里满足条件即可执行.case如果在case语句结束时不使用break,case会继续向下执行代码,或者多个case为同一个执行条件,只需要在最后一个满足条件的case写输出语句跟break即可,起到简化代码的作用.

3、三种循环语句的区别?什么时候用for语句,什么时候while语句?


次数确定时候使用for循环,次数不确定时使用while循环,另外while和do-while一般都是变量定义在外面,只要在定义行直到作用域结束都可以使用,do-while不管判断条件是否为true,必定执行一次.
回复 使用道具 举报 0 1
本帖最后由 fjlouie 于 2018-5-31 21:10 编辑

刘杭生
1、if ,if...else,if...else if...else  三种if语句的区别
        1) if        
                就是:判断条件为true就执行,false就不执行.
        2) if...else        
                就是:判断条件为true就执行if的语句体,false就执行else的语句体.
        3) if...else if...else
                        就是:判断条件为true就执行一地个if的语句体,false就执行下一个if的判断,
                        为true就执行第二个if语句体,还是false就执行else的语句体.
2、default 一定要放在最后么?  用自己的话来解释下case的穿透
        1) 不一定,对顺序没有要求.
        2) case如果后面没有break,那么他执行下一个case,直到找到break为止.
3、三种循环语句的区别?什么时候用for语句,什么时候while语句?
        1) for跟while循环里如果判断条件都为false那么一次都不会执行.do-while会至少执行一次.
            for里面定义的变量只能自己用,while跟do-while定义的变量自己用完,别人也还可以用.
        2) 知道具体循环次数就用for,不知道就用while.
回复 使用道具 举报
1,、if ,if...else,if...else if...else  三种if语句的区别

if 判断ture执行括号内代码 if (ture)else(false)二选一 if else if省略号 else 多种选择  

2、default 一定要放在最后么?  用自己的话来解释下case的穿透

不一定  。
没有 break关键字 一直run

3三种循环语句的区别?什么时候用for语句,什么时候while语句?

do while 不管条件判断结果 hui执行一次循环体,for中 变量 作用域  与 其他 两种 不同   循环次数确定时 使用for 否则 反之
康春达
回复 使用道具 举报
名:刘思聪

1、if ,if...else,if...else if...else  三种if语句的区别if为最基本的形式,即当条件满足时执行制定的语句段否则直接跳过该语句段;if......else......则是“二者取其一”如果满足条件则执行第一个语句段否则执行第二个语句段;而if ...else if...else...则是“多者取其一”,如果满足第一个条件则执行第一个语句段;否则看第二个比较表达式是否满足,如果满足则执行第二个语句段;……直到当前面所有比较表达式都为false的时候,执行最后一个else后面的语句段。

2、default 一定要放在最后么?  用自己的话来解释下case的穿透
default  可以不放在最后。用自己的话来理解case的穿透:switch语句,会从找到的case开始逐条向下执行,直到遇到break或者语句最后(大括号结尾),如果在一个case的语句段后面没有遇到break的话,语句会进入到下一个case里继续执行而不会停下来,也就是穿透了这个case。

3、三种循环语句的区别?什么时候用for语句,什么时候while语句?



for、whlie循环如果循环条件从未被满足过,循环体一次也不会执行,而do...while...至少要无条件执行一次循环体。
for中定义的i(指常用的控制循环的变量)被定义在循环语句内,只能在循环内部被访问,而while和do...while则是定义在语句外,循环结束后仍旧可以访问。

当循环次数等条件比较明确(如直接知道需要多少次循环)的情况下,尽量使用for语句,而其他情况下尽可能使用while语句。
回复 使用道具 举报
彭东亮
1、if ,if...else,if...else if...else  三种if语句的区别
    if语句中一个语句体,当条件为true则执行语句体,当为flase时,则不执行;if...else语句有两个语句体,当条件为true执行语句体1,当为flase时执行语句体2;if...else if...else 语句中又N个语句体,也有N个条件,当符合某个条件时,则执行相对应的语句体;
2、default 一定要放在最后么?  用自己的话来解释下case的穿透
        switch语句结构:
                switch(关系表达式){
                case 常量1:
                语句体1;
                break;
                case 常量2:
                语句体2;
                break;
                ...
                default:
                语句体1;
                break;}
        在switch语句default不一定要放在最后,再switch语句中,各个case不需要按顺序进行排列。
        当break缺失时,会造成case的穿透,例如当上述结构中语句体1后的break确实,则会穿透值语句2,直到再次碰到下一个break才结束。
       

3、三种循环语句的区别?什么时候用for语句,什么时候while语句?
        三种循环语句分为for循环、while循环与do while循环,do while循环语句中即使一次都没满足条件,也会进行循环1次,而for循环和while循环则循环0次;for循环初始表达式再for里面,只有在for循环的作用域中使用,而while循环与dowhile循环中初始表达式再作用域外,所以在出了作用域也能进行使用。
        for循环一边用再循环次数已知的情况,所以再遍历时使用for循环会更为方便;而while循环语句应用于循环次数未知的情况;
回复 使用道具 举报
洪文生
1、单if语句只能对一种条件进行判断,情况只有一种:条件为true时就执行语句,条件为false时就不执行语句。
     if-else语句能对一种条件进行判断,情况有两种::条件为true时就执行语句1,条件为false时就不执行语句2。
     if...else if...else语句能对多种条件进行判断,情况有n种,只要满足某一条件即为true时,就执行对应的语句,执行完之后就退出if结构。
2、不一定。default放在最后时,相应的break可以省略。程序运行到switch语句,会从与switch语句条件表达式中相匹配的case开始执行,如果该case的break省略掉,执行完该case语句,程序会按从上往下顺序执行下面的case语句直到遇到break或者程序结束,这就是case穿透。
3、
   1.        如果条件从来没有满足过,那么for循环和while循环将会执行0次,但是do-while循环会至少执行一次
   2.        For循环变量在小括号中定义只有在循环内部才能使用。
While和do-while循环初始化语句在外面,所以出循环之后还可以继续使用
当知道循环次数后,用for循环。
当不知道循环次数时,用while循环。


回复 使用道具 举报
        1:if式true就执行语句,不是就不执行;if else 如果是true就执行语句1,flase执行语句2;if else 如果是true 执行语句1,如果是flase需要继续判断表达式是true还是flase,如果是true则执行语句2,如果是flase就继续看是true还是flase,如没有一个true,就执行n+1语句.
        2:可以不放在最后;在switch语句中,case后面没放break就会发生穿透,一直想向下运行,知道遇到一个break。
        3;区别:如果判断条件不满足,for和while不运行,而do while一定会运行一次, . for循环的变量在小括号当中定义,只有循环内部才可以使用,while循环和do-while循环初始化语句本来就在外面,所以出来循环之后还可以继续使用。
当已知循环次数时用for,反之while.
回复 使用道具 举报
1、if ,if...else,if...else if...else  三种if语句的区别
if只有一次条件判断,执行一次 , if  else   if else if  多次条件判断   

2、default 一定要放在最后么?  用自己的话来解释下case的穿透
无论位置,先判断各个case,最后执行default
case 穿透 没有break不跳出 往下运行知道碰到下一个break;

3、三种循环语句的区别?什么时候用for语句,什么时候while语句?
区别:for语句 变量都位于语句内,while语句 和do while语句的变量于循环语句内,do while语句至少循环一次
for语句适用于循环次数已知的程序。
回复 使用道具 举报
1、if是单语句判断,相当于一个开关,如果条件成立就执行。否则,不执行。if else至少有一种条件要执行,二选一。if else if else是多重选择结构,跟switch语句有点像。
2、defaut只能放到最后,因为程序是从上到下执行,它是负责收尾语句。如果不加break语句的话程序就会根据条件依次从上往下执行,这样就会导致上一个case执行的语句穿透到下一个case语句里面直到出现break才会终止switch语句。
3、for一般用在循环的次数明确,while一般循环次数无法确定的情况下使用,do..while不管条件有没有成立,都会先执行一次,while和do..while如果声明变量和在执行体添加步进语句,也可以达到for循环一样的效果。
回复 使用道具 举报
1、if ,if...else,if...else if...else  三种if语句的区别:
a.单个的if语句只有两种选择,执行或者不执行,根据小括号里面的判断语句,小括号里面是true就执行,false就不执行
b.if...else语句的话,就是二者选其一,根据小括号里面的判断语句,true就执行第一个语句,要是说false就执行else下面的语句,肯定要输出一个结果。
c.if...else if...else的话选择就有很多种,第一个判断语句是false就跳到下一个if else语句,如果这么多的if...else语句都是false,那么只会执行else下面的语句。
2、default 一定要放在最后么?  用自己的话来解释下case的穿透
不一定要放在最后啊,个人推荐放在最后一个,增加代码的可读性。
这个穿透的话,个人理解是这样的,break就好像是防弹衣,如果上一个case语句没有这个防弹衣,程序的结果明明只会选择你的,但是你不穿这个防弹衣,就会祸害到下一个人,把下一个无辜的人也带走,最后就会造成团灭 Ace!
3、三种循环语句的区别?什么时候用for语句,什么时候while语句?
for循环内定义的变量只能在循环被使用,循环外不可用。
while循环和 do-while循环语句定义的变量在外面,仍然可用。
如果说次数确定的话用for循环
如果说次数不确定的话用while循环
回复 使用道具 举报
本帖最后由 1982Monster 于 2018-5-31 21:22 编辑

刘慧梅1、if ,if...else,if...else if...else  三种if语句的区别
if语句:当if语句中的条件为true时,则执行语句;当条件为false时,则不执行语句。
if..else语句:二选其一。当条件为true时,则执行if大括号内的语句1,不再执行if大括号以下的语句;当条件为false时,则执行else大括号内的语句2,不执行if大括号内的语句1。
if...else if...else:N者中选其一。当所有条件中某一个条件成立时,则执行成立条件中的语句,其他语句都不执行

2、default 一定要放在最后么?  用自己的话来解释下case的穿透
default不一定要放在最后面,在switch语句中,顺序可以颠倒。
case穿透就是如果将case后的break删除,则一直往下运行,直到遇到break或者整体结束

3、三种循环语句的区别?什么时候用for语句,什么时候while语句?
for,while,do-while三种循环语句的区别:
如果条件不成立,for循环语句和while语句则不运行执行语句,但do-while循环语句至少会执行一次。
直到循环次数是用for循环语句,不知道循环次数的时候用while循环语句。


回复 使用道具 举报
王博

1:
if 语句只有一个语句体,判断语句成立就执行语句体,不成立就不执行

if...else 语句有两个语句体A和B,如果判断语句成立就执行A,不成立就执行B,二者中必有一个会执行

if...else if...else语句有多个n个判断语句和对应的n + 1个语句体。如果第一个条件成立就执行对应的第一个语句体,后面的就都不执行了。如果第一个条件不成立就不执行语句体1,然后判断第二个...以此类推,如果全部条件都不成立,就执行最后的第n+1语句体。它是多者选其一。


2:
switch语句比较灵活,case 和 default 顺序随意,default 可以不放在最后,但一般情况建议放在最后。
case 穿透就是指会跳过case判断值往下执行代码,直到遇到break或者代码结束才会停止


3:
for循环和while循环如果条件一开始就不成立,就一次都不会循环。而do  while循环不管条件成不成立,至少会循环一次。
for循环初始化变量定义在小括号内,只能在for循环中才能使用,for循环外面不能用,而while和do while循环定义在外面,所以可以使用。
一般知道具体循环次数或者范围就用for,反之就用while。
回复 使用道具 举报
王宇晨
1、if ,if...else,if...else if...else  三种if语句的区别
if 只有一个判断条件,判断条件为true就执行语句体,为false就结束语句体。
if...else 判断条件为true就执行语句体,否则就执行另外一个语句体。一些简单的if...else语句可以和三元运算符相互转换。
if...else if...else 为多条件判断,if判断条件为true就执行语句体,否则如果满足另外一个条件,就执行其中的语句体,依次判断。else只能放在最后,不能随意放置。

2、default 一定要放在最后么?  用自己的话来解释下case的穿透
default不一定要放在最后。case穿透就是在执行语句时,只要没有遇到break,就一直向下运行,知道遇见break或者运行到switch语句的结束。

3、三种循环语句的区别?什么时候用for语句,什么时候while语句?
三种循环的区别:如果判断条件从未满足过,for和while将一次不会执行,而do...while至少会执行一次,for循环的变量定义在小括号内,只能在循环中使用,while,do...while的变量在循环外,循环之后还可以使用如果循环次数确定就用for循环语句,如果不确定就用while循环语句。
回复 使用道具 举报
1、if ,if...else,if...else if...else  三种if语句的区别
   if 用于一个条件判断,一种执行结果
   if...else 用于一个条件判断,两种执行结果
   if...else if ...else 用于两个及两个以上条件判断,多种执行结果。
   if是类似于 if...else 和 if...else if...else的简化。
   if...else 是类似于  if...else if...else的简化。
   if( ){}
   相当于
   if( ){
   
   }else{
        // 为空
   }
   相当于
   if( ){
   
   }else if(false){
        
   }else{
        // 为空
   }
   
2、default 一定要放在最后么?  用自己的话来解释下case的穿透
   不一定。
   switch结构,结束运行的条件是触发break或者是语句全部结束(执行到末尾“}”处),当一个case中没有break语句时,会继续向下一个case执行。这就叫做case的穿透

3、三种循环语句的区别?什么时候用for语句,什么时候while语句?
区别:
   1. 在第一次的条件判断为false时,do while 是已经运行了一次循环体,而for和while是没有运行过的
   2. 在标准格式下:(for循环的初始化语句在循环内),for的循环变量作用域是只在循环内,while和do while的循环变量还作用在循环外。

什么时候用for语句和while语句:当已知循环次数时,使用for语句;未知时使用while语句。
回复 使用道具 举报
吴佳更
1.if语句就是看关系表达式为true或false,true就执行语句体,false则不执行。
if...else 就是看关系表达式为true或false,true就执行语句体1,else则执行语句体2。
if...else if...else 就是看哪个关系表达式为true就执行哪个下面的语句体,都false则执行else下面的语句体。
2.default不一定要放在最后,只要格式正确,放switch(){}内的开头都行。
case的穿透理解为如果常量符合,而没有break,就会一直向下执行,直到遇到break或者switch结束。
3.三种循环语句的差别在,1.当条件从没满足时,do while会执行一次,而for跟while不执行。
                                         2.for的变量的作用域只在for循环中,而另外两个的变量在循环外仍可以使用
在知道具体次数的时候使用for,在不知道具体次数的时候使用while
回复 使用道具 举报 1 0
1、if ,if...else,if...else if...else  三种if语句的区别。

if : 作为一个开关,如果if(表达式)表达式的值为true 。那么,会执行if后的一行代码,或者是{}内的代码块。

if ..else : 是要么执行if后面的语句,要么执行else的语句。

if...else if..else : 是if...else的一种嵌套。

2、default 一定要放在最后么?  用自己的话来解释下case的穿透。

default不是一定要放在最后。

穿透:case语句的作用是判读switch()小括号中的表达式的值,会从上至下寻找和case的值相等的值作为该程序的入口,如果说这个入口进入后没有遇到break语句,那么会运行剩下的case后面跟的语句,直到遇到break,或者整个switch代码运行结束。

3、三种循环语句的区别?什么时候用for语句,什么时候while语句?
do..while和其他两种区别是:do..while至少会执行一次循环体。
while和for的区别是:while循环变量定义在前,for的循环变量定义在for内部,是个局部变量,该变量的生命周期会随着for循环的运行结束而结束。所以while循环变量的作用域会比for大。
另外还要注意while和for中使用continue和break的区别。
                int i=0;                                   |                      for(int j=0;j<10;j++){
                while(i<10){                           |                      if(j>3)
                if(i>3)                                    |                     continue;
                continue;                               |                     j++;
                 i++;                                      |                     }
                 }                                             |
while循环在使用continue时要小心,因为while的步进语句在循环体内,上述代码,当i被赋值为4时,i++就执行不到了,所以会出现死循环的现象。用for循环就可以解决该问题,因为for的步进语句在循环体外部。
-----------------------------------------------------------------------------------------------------------------------------
for循环语句是当循环次数明确时使用,while是循环次数不明确时使用。
回复 使用道具 举报
1:if一个判断后就直接结束if语句,if...else有两个判断后结束if语句(二者选其一),if...else if...else有N个判断后结束if语句(多者选其一)。



2.default:不一定  case的穿透在switch中 case 常量(常量肯定不能一样)后的程序多个一样的时候就可以用到case的穿透也能得到同样的结果,然后直到遇到break才结束。


3.(1)for,while,do...while区别:for的初始化表达式在小括号里面它的作用域也就是for里面,当然也可以把for循环的初始化表达式写在外面,但while和do...while的初始化表达式的作用域在循环外所以它们的作用域比较大,还有do...while的do里的语句肯定会执行一次。
  (2)当循环的次数比较明了的时候建议用for循环,当循环次数没有那么明了的时候建议用while循环
回复 使用道具 举报
卢林觉

1、if 语句针对只有一个条件判断(即只有一种情况)时使用;if...else针对有两个条件判断(即有两种情况)时使用;if...else if...else针对有多个条件判断(即有多种情况)时使用。

2、switch语句中default不一定要写在最后,但是需注意default写在最后可以省略break,写在语句中间则不可省略break。case语句会一直运行到遇到break或者语句末尾时才会停止,即上一个case语句在未遇到break时会运行下一个case语句的语句体,直到break或到末尾。

3、(1)do_while语句至少会运行一次,for、while则可能一次都不运行;
(2)for循环初始化是在循环语句内,do_while与while在循环体外。
当明确循环次数时使用for循环,不明确循环次数用while循环。但两者可相互替换。
回复 使用道具 举报
1、if ,if...else,if...else if...else  三种if语句的区别
i语句用在f用在只有单个判断条件以及单个判断条件以及单个执行语句的时候;
if...else语句用在只有两个判断条件以及两种不同执行语句的时候;
if...else if...else 语句用在有多个判断条件以及多种不同执行语句的时候。

2、default 一定要放在最后么?  用自己的话来解释下case的穿透
default不一定要放在最后,case的穿透指的是当case都和表达式的值匹配时,执行所在行case下的语句体且没有遇到break的时候不需要判断下一个case的值与表达式的值是否相等直接执行下一个case值对应的语句体,直到遇到break或者一整个的switch语句结束为止。

3、三种循环语句的区别?什么时候用for语句,什么时候while语句?
三种循环语句的区别有:(1)for语句和while语句在判断条件不满足的情况下执行0次需要执行的语句,但是do...while语句则至少执行一次需要执行的语句;(2)for循环语句的循环变量在整个循环体内执行,超出循环体则失去意义;而while语句和do...while语句的循环变量从定义开始到后面的循环语句外的部分还可以继续使用。
当我们很明显可以知道循环体中循环变量的次数有限的情况下用for语句,反之则用while语句。
回复 使用道具 举报
黄希

1、if ,if...else,if...else if...else  三种if语句的区别
        if根据单个条件,执行满足条件的单个语句体;
        if...else根据单个条件,执行两个语句体中满足条件的那一个;
        if...else if...else支持多个条件判断,执行满足条件的那个语句体。

2、default 一定要放在最后么?  用自己的话来解释下case的穿透
        不一定。switch语句中的case与default的顺序可以颠倒。
        case穿透:匹配哪个case,就从那个case开始往下执行,直到遇到break或switch整体结束为止。

3、三种循环语句的区别?什么时候用for语句,什么时候while语句?
        for循环与while循环根据条件判断是否满足,执行固定次数;do-while循环,至少执行一次。
        for循环的初始化变量一般定义在小括号中,只能在循环体内部使用;while循环和do-while循环的初始化变量在外部定义,循环结束后还可以继续使用。

回复 使用道具 举报
杨银万
1、单个if语句相当于开关语句,if(条件)中的条件成立时打开开关即执行内部代码,条件不成立则不执行;if...else语句增加了在条件不成立的情况下便执行else中的代码,即条件成立与不成立都执行相应的代码;if...else if...else语句则可以判断多个条件,根据不同条件执行不同代码。
2、在switch语句中,若case后都有break语句结尾,则default放在哪都没有影响;case的穿透即在switch(表达式)执行的时候,会找到case后与之匹配的常量值的位置开始顺序执行代码,直到遇到break语句结束或整个switch的结束,若没有,则会跳过case语句,顺序执行下面的代码。
3、区别:(1)当循环条件不成立时,do-while语句至少会执行一次,for和while执行0次。(2)for循环语句声明的初始化变量只能在循环体中使用,while和do-while语句的初始化变量在循环体外。
用法:当需要循环的次数明确时,可以使用for语句比较方便。若需要循环的次数不确定,可以使用while语句与break配合使用。
回复 使用道具 举报
林焕
1、if适合一种情况
if...else...两种情况
if...else if...else 多种情况
========一点也不华丽的分割线========
2、default不一定要放在最后;case的穿透性现象,就是case后面不跟break,不会判断下一个case的值,直接向后运行,直到遇到break或者整体switch结束。
========一点也不华丽的分割线========
3、循环次数已知的时候用for;
循环次数未知时用while;
do...whilewu条件循环一次;




回复 使用道具 举报
1. if 是判断后只有一种结果,true输出,false直接结束;if...else  是判断后分两种情况输出结果,是true输出一种,是false输出另一种;if...else if...if  是判断多种情况,多种判断条件,输出符合条件的结果。
2. default不一定要放在最后。 case运行时,只要没有遇到break,会继续向下一个case运行,直到碰到break才停止运行。
3. 区别:当条件判断不符合时,for、while没有运行,do whlie 运行1次;for 的变量定义在循环内,只能循环内使用,while、do while的变量定义在循环外,循环外还能使用。
    循环次数已知用for,循环次数未知用while。
回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 加入黑马