日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

四:选择结构

發(fā)布時間:2023/12/16 编程问答 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 四:选择结构 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

目錄

01、流程概述

02、順序結構

03、選擇結構(分支結構)

3.1、if選擇結構

? ? ? ?3.1.1、單分支If選擇結構

???????3.1.2、雙分支if-else選擇結構

???????3.1.3、多分支if-else-if選擇結構

???????3.1.4、If選擇結構的嵌套

3.2、switch-case選擇結構

04、循環(huán)結構

4.1、for循環(huán)

4.2、while循環(huán)

4.3、do-while循環(huán)

4.4、嵌套循環(huán)

4.5、break、continue的使用


01、流程概述

02、順序結構

03、選擇結構(分支結構)

? ? ? ? 選擇結構(分支結構)包括:

? ? ? ? ? ? ? ?(1) if選擇結構

? ? ? ? ? ? ? ? ? ? ? ? 單分支if選擇結構

? ? ? ? ? ? ? ? ? ? ? ? 雙分支if-else選擇結構

? ? ? ? ? ? ? ? ? ? ? ? 多分支if-else-if選擇結構

? ? ? ? ? ? ? ? (2)Switch-case選擇結構

(1)單分支if選擇結構If(條件){//代碼塊}(2)雙分支If選擇結構:if(條件){//代碼塊1}else{//代碼塊2}(3)多分支if選擇結構:If(條件1){//代碼塊1}else if(條件2){//代碼塊2}else if(條件3){//代碼塊3}......}else{//代碼塊n}

3.1、if選擇結構

? ? ? ?3.1.1、單分支If選擇結構

?(1)語法結構

if(條件){//代碼塊}

(2) 執(zhí)行規(guī)律

  • ????????如果條件為true,執(zhí)行{}中的代碼,執(zhí)行完成,繼續(xù)往下執(zhí)行{}后面的代碼
  • ????????如果條件為false,執(zhí)行{}后面的代碼

(3)注意:

  • ????????條件不管多么簡單還是多么復雜,都只能是布爾值

(4)案例:

? ? ? ? 案例1:張浩Java成績大于90分,老師獎勵他iPhone6s ,該怎么做呢?

????????案例2:

? ? ? ? ? ? ? ? /*
?? ??? ? ????????* 張浩Java成績大于90分,并且音樂成績大于80分時,
?? ??? ? ????????* 或者Java成績等于100分,音樂成績大于70分時,
?? ??? ? ????????*?老師獎勵他,該怎么做呢?
?? ??? ? ????????* */

? ? ? ? 案例3:

??????????????????/*
?? ??? ????????? * 如果張浩Java考試成績大于90分,老師就獎勵他一個iPhone6s?
?? ??? ????????? * 否則老師就罰他蹲馬步
?? ??? ????????? */

案例1://張浩Java成績大于90分,老師獎勵他iPhone6s ,該怎么做呢?package com.bdqn.demo02; public class Demo01 {public static void main(String[] args) {//聲明一個變量javaScore用來存儲張浩的Java成績double javaScore = 95;//根據(jù)張浩的java成績判斷他能不能拿到獎勵if(javaScore>=90){System.out.println("獎勵一部iPhone6S");} System.out.println("繼續(xù)努力");} } 案例2:/** 張浩Java成績大于90分,并且音樂成績大于80分時,* 或者Java成績等于100分,音樂成績大于70分時,* 老師獎勵他,該怎么做呢?* * */package com.bdqn.demo02;public class Demo02 {public static void main(String[] args) {//聲明一個變量javaScore用來存儲張浩的java成績double javaScore = 95;//聲明一個變量musicScore用來存儲張浩的音樂成績double musicScore = 88;if(javaScore>90&&musicScore>80||javaScore==100&&musicScore>70){System.out.println("獲得老師獎勵的iPhone6S");}System.out.println("繼續(xù)努力");}} 案例3:/** 如果張浩Java考試成績大于90分,老師就獎勵他一個iPhone6s * 否則老師就罰他蹲馬步*/package com.bdqn.demo02; public class Demo03 {public static void main(String[] args) {double javaScore = 9;//張浩java成績滿足要求,獲得獎勵if(javaScore>=90){System.out.println("獎勵一部iPhone6s");}//張浩Java成績不滿足要求,受處罰if(javaScore<90){System.out.println("蹲馬步");}System.out.println("繼續(xù)努力");}}

???????3.1.2、雙分支if-else選擇結構

(1)語法結構

/* if(條件){* //代碼塊1;* }else{* //代碼塊2;* }*/

(2)執(zhí)行規(guī)律

  • 如果條件為true,執(zhí)行代碼塊1,執(zhí)行完之后,執(zhí)行if-else結構后面的代碼
  • 如果條件為false,執(zhí)行else{}里面的代碼塊2,執(zhí)行完之后,執(zhí)行if-else結構后面的代碼

(3)注意:

  • ?條件為布爾值
  • 如果代碼塊1只有一條語句,代碼塊1所在的{}可以省略,但不建議

(4)案例:

? ? ? ? 案例1:

?? ??? ?/*
?? ??? ? * 如果張浩Java考試成績大于等于90分,老師就獎勵他一個iPhone6s?
?? ??? ? * 否則老師就罰他蹲馬步
?? ??? ? */

案例1:/** 如果張浩Java考試成績大于等于90分,老師就獎勵他一個iPhone6s * 否則老師就罰他蹲馬步*/package com.bdqn.demo02;public class Demo04 {public static void main(String[] args) {/** 雙分支if選擇結構:if-else選擇結構* 語法結構:* if(條件){* //代碼塊1;* }else{* //代碼塊2;* }* 執(zhí)行規(guī)律:* 如果條件為true,執(zhí)行代碼塊1,執(zhí)行完之后,執(zhí)行if-else結構后面的代碼* 如果條件為false,執(zhí)行else{}里面的代碼塊2,執(zhí)行完之后,執(zhí)行if-else結構后面的代碼* 注意:* 條件為布爾值* 如果代碼塊1只有一條語句,代碼塊1所在的{}可以省略,但不建議*/double javaScore = 9;if(javaScore>=90){System.out.println("獎勵iPhone6s");}else{System.out.println("蹲馬步");}System.out.println("繼續(xù)努力");}}

???????3.1.3、多分支if-else-if選擇結構

(1)語法結構

/** 多重if選擇結構---》if-else-if選擇結構* 語法結構:* if(條件1){* //代碼塊1* }else if(條件2){* //代碼塊2* }else if(條件3){* //代碼塊3* }....* * }else{* //代碼塊n* }*/

?(2)執(zhí)行規(guī)律

  • 先判斷條件1,如果條件1為true,執(zhí)行代碼塊1,執(zhí)行完之后結束整個if-else-if結構,執(zhí)行該結構后面的代碼
  • 如果條件1為false,繼續(xù)往下判斷條件2,如果條件2為true, 執(zhí)行代碼塊2,執(zhí)行完之后結束整個if-else-if結構,執(zhí)行該結構后面的代碼
  • 如果條件2為false,繼續(xù)往下判斷條件3,如果條件3為true,執(zhí)行代碼塊3,執(zhí)行完之后結束整個if-else-if結構,執(zhí)行該結構后面的代碼
  • ......
  • 如果所有的條件都為false,執(zhí)行else里面的代碼塊n
  • ?(3)注意:?

    ????????(1)條件為布爾值
    ????????(2)else if可以有1個、2個、多個
    ????????(3)else也可以省略,如果所有的條件不成立,也沒有else,那么整個if-else-if結構不執(zhí)行
    ????????(4)多重if選擇結構中各個條件的順序不可以任意排列,要求從上往下由嚴格到寬松。?

    ?(4)案例

    ? ? ? ? 案例1:

    ????????????????/*
    ?? ??????????? ? * 對學員的考試成績評測
    ?? ??????????? ? * 成績>=80 :良好?
    ?? ??????????? ? * 成績>=60 :中等
    ?? ??????????? ? * 成績<60 ? :差?
    ?? ??????????? ? */? ?

    案例1:/** 對學員的考試成績評測* 成績>=80 :良好 * 成績>=60 :中等* 成績<60 :差 */package com.bdqn.demo02;public class Demo05 {public static void main(String[] args) {double javaScore = 95;if(javaScore>=80){System.out.println("良好");}else if(javaScore>=60){System.out.println("中等");}else{System.out.println("差");}System.out.println("繼續(xù)努力");}}

    ???????3.1.4、If選擇結構的嵌套

    (1)語法結構

    /* if(條件1){* //代碼塊1* if(條件2){* //代碼塊2* }else{* //代碼塊3* }* }else{* //代碼塊4* }*/

    (2)執(zhí)行規(guī)律

    • 判斷條件1,條件1為true,執(zhí)行代碼塊1,進一步判斷條件2,條件為true,執(zhí)行代碼塊2,條件2為false,執(zhí)行代碼塊3,執(zhí)行完之后,結束整個所有的if結構
    • ?條件1為falae,執(zhí)行下面else里的代碼塊4

    (3)案例:

    ? ????????? 案例1:此題使用到Scanner類對象、equals方法

    ?????????????????/*
    ?? ??? ????????? * 學校舉行運動會,百米賽跑跑入10 秒內的學生有資格進決賽,
    ?? ??????????? ? * 根據(jù)性別分別進入男子組和女子組

    ? ? ? ? ? ? ? ? ?*
    ?? ??? ????????? */

    案例1:此案例使用到了輸入語句Scanner、equals等/** 學校舉行運動會,百米賽跑跑入10 秒內的學生有資格進決賽,* 根據(jù)性別分別進入男子組和女子組*/package com.bdqn.demo02;import java.util.Scanner;public class Demo06 {public static void main(String[] args) {//創(chuàng)建Scanner類對象Scanner input = new Scanner(System.in);System.out.println("請輸入你的百米賽跑成績:");//從鍵盤獲取數(shù)據(jù)double runScore =input.nextDouble();//根據(jù)成績判斷能不能進入決賽if(runScore<10){System.out.println("恭喜你,進入百米賽跑決賽");//根據(jù)性別判斷進入男子組還是女子組System.out.println("請輸入你的性別:");//從鍵盤獲取性別數(shù)據(jù)String sex =input.next();/** 以下使用到了equals方法,與==類似,但又有所不同,次數(shù)不做詳細解釋* 對比:* int a=20;* int b=20;* System.out.println(a.equals(b));* System.out.println(a==b);* 輸出結果都為true,效果類似* * 具體解析,請翻看我的專欄:JavaSE,進行尋找equals方法進行查看* *///根據(jù)性別判斷決定進入男子組還是女子組if(sex.equals("男")){System.out.println("進入男子組");}else if(sex.equals("女")){System.out.println("進入女子組");}else{System.out.println("對不起,暫時還沒有針對你的性別開展比賽");}}else{System.out.println("很遺憾,不能進入百米賽跑決賽");} } }

    1、練習1:?

    練習1: /* if選擇結構嵌套練習:* 根據(jù)天氣決定活動類型:* 晴天:* 28°以上:室內游泳* 28°以下:室外籃球* 雨天:* 25°以上:室內羽毛球* 25°以下:在家敲代碼* 其它天氣:* 在家睡覺*/package com.bdqn.demo02; //導入包 import java.util.Scanner; public class Demo07 {public static void main(String[] args) {//創(chuàng)建Sanner類對象Scanner input = new Scanner(System.in);System.out.println("請輸入今日天氣:");//從鍵盤獲取數(shù)據(jù)(天氣)String tianQi = input.next();System.out.println("請輸入今日溫度值:");//從鍵盤獲取數(shù)據(jù)(溫度)double wenDu = input.nextDouble();/** 字符串的比較使用tianQi.equals("晴天");* 解析:從鍵盤獲取天氣,當獲取到的tianQi值為“晴天”時,通過tianQi.equals("晴天");進行比較,則為true,反之,當從鍵盤獲取到的天氣不是晴天,則為false* * */ //判斷tianQi.equals("晴天");是否為trueif(tianQi.equals("晴天")){if(wenDu>=28){System.out.println("室內游泳");}else{System.out.println("室外籃球");}}else if(tianQi.equals("雨天")){if(wenDu>=25){System.out.println("室內羽毛球");}else{System.out.println("在家敲代碼");} }else{System.out.println("在家睡覺");} } }

    3.2、switch-case選擇結構

    (1)語法結構

    //表達式的值可以是int、short、byte、char、枚舉類型、String(JDK7及以后版本可以使用)* switch(表達式){* case 常量值1:* //代碼語句;* break;* case 常量值2:* //代碼語句;* break;* case 常量值3:* //代碼語句;* break;* .........* default:* //代碼語句;* break;

    (2)執(zhí)行規(guī)律

    • 根據(jù)表達式的值,來與case后面的常量值進行匹配
    • 匹配上哪個常量值,就執(zhí)行該case里面的代碼語句,代碼語句執(zhí)行完,執(zhí)行break,退出整個Switch選擇結構,執(zhí)行Switch選擇結構后面的代碼
    • 如果表達式的值與所有的case常量值不匹配,則執(zhí)行default里面的代碼語句,執(zhí)行完執(zhí)行break語句,退出整個Switch選擇結構

    (3)注意事項

    • (1)表達式的值可以是int、short、byte、char、枚舉類型、String(JDK7及以后版本可以使用)
    • (2)case常量值不能相同
    • (3)default語句可以在任意位置,一般來說寫在最后,也可以省略不寫
    • (4)break的作用是結束整個Switch選擇結構,如果不寫,會造成“case穿透”現(xiàn)象,此現(xiàn)象可以合理使用
    • 案例:合理使用“case穿透”現(xiàn)象

    ?????????? ??? ?// 輸出每一個月份屬于哪一個季節(jié)
    ?? ??????????? ?// 12/1/2 冬季 3/4/5春季 6/7/8夏季 9/10/11秋季

    package com.bdqn.demo02;public class Demo03 {public static void main(String[] args) {// “case穿透”現(xiàn)象// 輸出每一個月份屬于哪一個季節(jié)// 12/1/2 冬季 3/4/5春季 6/7/8夏季 9/10/11秋季int month = 4;switch (month) {case 12:case 1:case 2:System.out.println("冬季");break;case 3:case 4:case 5:System.out.println("春季");break;case 6:case 7:case 8:System.out.println("夏季");break;case 9:case 10:case 11:System.out.println("秋季");break;}} }

    ?(4)案例:

    ? ? ? ? ????????案例1
    ? ? ? ? ?????????/* 韓嫣參加計算機編程大賽?
    ?? ??? ????????? * 如果第一名,參加麻省理工大學組織的1個月夏令營?
    ?? ??? ????????? * 如果第二名,獎勵惠普筆記本電腦一部?
    ?? ??? ????????? * 如果第三名,獎勵移動硬盤一個
    ?? ??? ????????? * 否則,不給任何獎勵
    ?? ??? ????????? */

    案例1:/** 韓嫣參加計算機編程大賽 * 如果第一名,參加麻省理工大學組織的1個月夏令營 * 如果第二名,獎勵惠普筆記本電腦一部 * 如果第三名,獎勵移動硬盤一個* 否則,不給任何獎勵*///使用switch選擇結構實現(xiàn)上述需求package com.bdqn.demo02;public class Demo02 {public static void main(String[] args) {int mingCi = 1;switch (mingCi) {case 1:System.out.println("參加麻省理工大學組織的1個月夏令營");break;case 2:System.out.println("獎勵惠普筆記本電腦一部");break;case 3:System.out.println("獎勵移動硬盤一個");break;default:System.out.println("不給任何獎勵");break;}System.out.println("繼續(xù)努力");}}

    04、循環(huán)結構

    4.1、for循環(huán)

    4.2、while循環(huán)

    4.3、do-while循環(huán)

    4.4、嵌套循環(huán)

    4.5、break、continue的使用

    總結

    以上是生活随笔為你收集整理的四:选择结构的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內容還不錯,歡迎將生活随笔推薦給好友。