運(yùn)算符和基本選擇結(jié)構(gòu)_第1頁(yè)
運(yùn)算符和基本選擇結(jié)構(gòu)_第2頁(yè)
運(yùn)算符和基本選擇結(jié)構(gòu)_第3頁(yè)
運(yùn)算符和基本選擇結(jié)構(gòu)_第4頁(yè)
運(yùn)算符和基本選擇結(jié)構(gòu)_第5頁(yè)
已閱讀5頁(yè),還剩43頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

運(yùn)算符和選擇結(jié)構(gòu)掌握boolean類型的用法掌握關(guān)系運(yùn)算符和邏輯運(yùn)算符掌握基本if選擇結(jié)構(gòu)用什么數(shù)據(jù)類型能表示一件藝術(shù)品是真貨還是假貨地鐵2號(hào)線的首發(fā)車時(shí)間是5:00嗎這次考試成績(jī)?cè)?0分之上嗎boolean(布爾)類型boolean類型的值:真:true假:falseboolean類型只有這兩個(gè)值?為什么需要boolean類型1、從控制臺(tái)輸入張三同學(xué)的成績(jī),與李四的成績(jī)(80分)比較,輸出“張三的成績(jī)比李四的成績(jī)高嗎?”的判斷結(jié)果intliSi=80;//學(xué)員李四成績(jī)booleanisBig;//聲明一個(gè)boolean類型的變量

Scannerinput=newScanner(System.in);System.out.print("輸入學(xué)員張三成績(jī):");//提示要輸入學(xué)員張三的成績(jī)int

zhangSan=input.nextInt();//輸入張三的成績(jī)

isBig=zhangSan>liSi;//將比較結(jié)果保存在boolean變量中System.out.println("張三成績(jī)比李四高嗎?"+isBig);//輸出比較結(jié)果定義boolean變量isBig,存儲(chǔ)比較結(jié)果將比較結(jié)果保存在isBig變量中演示示例1:用boolean變量描述信息比較高低、大小、長(zhǎng)短等張三的考試成績(jī)是否比李四高大象是否比烏龜更長(zhǎng)壽籃球跟地球一樣大嗎如何比較?使用關(guān)系運(yùn)算符可以比較高低、大小、長(zhǎng)短等?為什么使用關(guān)系運(yùn)算符常用的關(guān)系運(yùn)算符有哪些:>,<==,!=>=,<=張三的成績(jī)>李四的成績(jī)假大象的壽命<烏龜?shù)膲勖婊@球的大小==地球的大小假由此看出關(guān)系運(yùn)算符的作用:用來(lái)做比較運(yùn)算比較的結(jié)果:boolean類型2、如果張浩的Java考試成績(jī)大于98分,張浩就能獲得一個(gè)MP4作為獎(jiǎng)勵(lì)使用if選擇結(jié)構(gòu)可以解決if選擇結(jié)構(gòu)是根據(jù)條件判斷之后再做處理if(條件){//代碼塊}if(張浩的Java考試成績(jī)>90){獲得一個(gè)MP4作為獎(jiǎng)勵(lì);}結(jié)合問(wèn)題2基本的if選擇結(jié)構(gòu)結(jié)果必須是布爾值只有一條語(yǔ)句時(shí),建議不省略{}importjava.util.Scanner;publicclassGetPrize{ publicstaticvoidmain(String[]args){ Scannerinput=newScanner(System.in); System.out.print("輸入張浩的Java成績(jī):");//提示輸入Java成績(jī)

intscore=input.nextInt(); //從控制臺(tái)獲取張浩的Java成績(jī)

if(score>90){ //判斷是否大于90分

System.out.println("老師說(shuō):不錯(cuò),獎(jiǎng)勵(lì)一個(gè)MP4!"); } }}使用基本的if選擇結(jié)構(gòu)演示示例2:使用基本if選擇結(jié)構(gòu)3、張浩Java成績(jī)大于98分,而且音樂(lè)成績(jī)大于80分,老師獎(jiǎng)勵(lì)他;或者Java成績(jī)等于100分,音樂(lè)成績(jī)大于70分,老師也可以獎(jiǎng)勵(lì)他分析:怎樣把多個(gè)條件連接起來(lái)?使用邏輯運(yùn)算符運(yùn)算符表達(dá)式說(shuō)明&&條件1&&條件2僅僅兩個(gè)條件同時(shí)為真,結(jié)果為真||條件1||條件2只要兩個(gè)條件有一個(gè)為真,結(jié)果為真!!條件條件為真時(shí),結(jié)果為假條件為假時(shí),結(jié)果為真score1>98&&score2>80||score1==100&&score2>70

使用復(fù)雜條件下的if選擇結(jié)構(gòu)3-2當(dāng)運(yùn)算符比較多,無(wú)法確定運(yùn)算符執(zhí)行順序時(shí),可以使用小括號(hào)控制一下順序運(yùn)算符的優(yōu)先級(jí)最高的優(yōu)先級(jí):小括號(hào),即()最低的優(yōu)先級(jí):賦值運(yùn)算符,即=優(yōu)先級(jí)順序:!>算術(shù)運(yùn)算符>比較運(yùn)算符>&&>||(score1>98&&score2>80)||(score1==100&&score2>70)問(wèn)題3的條件publicclassGetPrize2{ publicstaticvoidmain(String[]args){ intscore1=100;//張浩的Java成績(jī)

intscore2=72;//張浩的音樂(lè)成績(jī)

if((score1>98&&score2>80) ||(score1==100&&score2>70)){ System.out.println("老師說(shuō):不錯(cuò),獎(jiǎng)勵(lì)一個(gè)MP4!"); } }}使用復(fù)雜條件下的if選擇結(jié)構(gòu)解決問(wèn)題3演示示例3:復(fù)雜條件下的if選擇結(jié)構(gòu)4、如果張浩Java考試成績(jī)大于98分,老師就獎(jiǎng)勵(lì)他一個(gè)MP4,否則老師就罰他進(jìn)行編碼使用兩個(gè)基本if選擇結(jié)構(gòu)使用if-else選擇結(jié)構(gòu)實(shí)現(xiàn)if(score>98){ System.out.println("老師說(shuō):不錯(cuò),獎(jiǎng)勵(lì)一個(gè)MP4!");}if(score<=98){ System.out.println("老師說(shuō):懲罰進(jìn)行編碼!");}使用if-else選擇結(jié)構(gòu)3-1

if-else選擇結(jié)構(gòu)if(條件){//代碼塊1}else{//代碼塊2}if(張浩Java成績(jī)>98){獎(jiǎng)勵(lì)一個(gè)MP4;}else{

懲罰進(jìn)行編碼;}結(jié)合問(wèn)題4使用if-else選擇結(jié)構(gòu)解決問(wèn)題4publicclassSimpleIf2{ publicstaticvoidmain(String[]args){ intscore=91;//張浩的Java成績(jī)

if(score>98){ System.out.println("老師說(shuō):不錯(cuò),獎(jiǎng)勵(lì)一個(gè)MP4!");

}else{ System.out.println("老師說(shuō):懲罰進(jìn)行編碼!"); } }}演示示例4:使用if-else結(jié)構(gòu)需求說(shuō)明:錄入會(huì)員信息判斷錄入的會(huì)員號(hào)是否合法完成時(shí)間:20分鐘常見(jiàn)調(diào)試問(wèn)題及解決辦法代碼規(guī)范問(wèn)題共性問(wèn)題集中講解說(shuō)出已學(xué)過(guò)的數(shù)據(jù)類型有哪些?舉例說(shuō)明已學(xué)過(guò)的運(yùn)算符有哪些?if和if-else選擇結(jié)構(gòu)執(zhí)行的順序是什么?用戶輸入兩個(gè)數(shù)a、b。如果a能被b整除或a加b大于1000,則輸出a;否則輸出b提示:

if((a%b==0)||(a+b>100)){ System.out.println(a); }else{ System.out.println(b); }參考代碼需求說(shuō)明:抽獎(jiǎng)規(guī)則:會(huì)員號(hào)的百位數(shù)字等于產(chǎn)生的隨機(jī)數(shù)字即為幸運(yùn)會(huì)員完成時(shí)間:15分鐘

使用多重if選擇結(jié)構(gòu)將成績(jī)分成幾個(gè)連續(xù)區(qū)間判斷。使用單個(gè)if選擇結(jié)構(gòu)無(wú)法完成,使用多個(gè)if選擇結(jié)構(gòu)很麻煩1、對(duì)學(xué)員的結(jié)業(yè)考試成績(jī)?cè)u(píng)測(cè)成績(jī)>=90:優(yōu)秀成績(jī)>=80:良好 成績(jī)>=60:中等成績(jī)<60:差多重if選擇結(jié)構(gòu)

if

(條件1){//代碼塊1

}

elseif

(條件2)

{//代碼塊2

}else

{//代碼塊3

}可以有多個(gè)可以省略什么是多重if選擇結(jié)構(gòu)int

score=70;//考試成績(jī)

if(score>=90){

System.out.println("優(yōu)秀");}

elseif(score>=80){

System.out.println("良好");}

elseif(score>=60){

System.out.println("中等");}

else{

System.out.println("差");}大于等于90分大于等于60分,小于80分小于60分大于等于80分,小于90分演示示例1:使用多重if選擇結(jié)構(gòu)使用多重if選擇結(jié)構(gòu)解決問(wèn)題12、我想買車,買什么車決定于我在銀行有多少存款如果我的存款超過(guò)500萬(wàn),我就買凱迪拉克否則,如果我的存款超過(guò)100萬(wàn),我就買帕薩特否則,如果我的存款超過(guò)50萬(wàn),我就買依蘭特否則,如果我的存款超過(guò)10萬(wàn),我就買奧托否則,我買捷安特 intmoney=52;//我的存款,單位:萬(wàn)元 if(money>=500){ System.out.println("太好了,我可以買凱迪拉克"); }elseif(money>=100){ System.out.println("不錯(cuò),我可以買輛帕薩特"); }elseif(money>=50){ System.out.println("我可以買輛依蘭特"); }elseif(money>=10){ System.out.println("至少我可以買個(gè)奧托"); }else{ System.out.println("看來(lái),我只能買個(gè)捷安特了"); }

各個(gè)條件的順序可以任意排列嗎?演示示例2:使用多重if選擇結(jié)構(gòu)使用多重if選擇結(jié)構(gòu)解決問(wèn)題2使用嵌套if選擇結(jié)構(gòu)要判斷是否能夠進(jìn)入決賽在確定進(jìn)入決賽的情況下,還要判斷是進(jìn)入男子組,還是進(jìn)入女子組3、學(xué)校舉行運(yùn)動(dòng)會(huì),百米賽跑跑入10秒內(nèi)的學(xué)生有資格進(jìn)決賽,根據(jù)性別分別進(jìn)入男子組和女子組嵌套if選擇結(jié)構(gòu)

if(條件1){if(條件2){

代碼塊1}else{

代碼塊2}}else{

代碼塊3}內(nèi)層選擇結(jié)構(gòu)什么是嵌套if選擇結(jié)構(gòu)

if(score<=10){ if(gender.equals("男")){

System.out.println("進(jìn)入男子組決賽!"); }elseif(gender.equals("女")){

System.out.println("進(jìn)入女子組決賽!"); }

}else{

System.out.println("淘汰!");

}

使用嵌套if選擇結(jié)構(gòu)解決問(wèn)題3外層選擇結(jié)構(gòu)內(nèi)層選擇結(jié)構(gòu)if結(jié)構(gòu)書(shū)寫規(guī)范為了使if結(jié)構(gòu)更加清晰、避免執(zhí)行錯(cuò)誤,應(yīng)該把每個(gè)if或else包含的代碼塊都用大括號(hào)括起來(lái)相匹配的一對(duì)if和else應(yīng)該左對(duì)齊內(nèi)層的if結(jié)構(gòu)相對(duì)于外層的if結(jié)構(gòu)要有一定的縮進(jìn)演示示例3:使用嵌套if選擇結(jié)構(gòu)訓(xùn)練要點(diǎn):嵌套if選擇結(jié)構(gòu)需求說(shuō)明:普通顧客購(gòu)物滿100元打9折;會(huì)員購(gòu)物打8折;會(huì)員購(gòu)物滿200元打7.5折實(shí)現(xiàn)思路:1、外層判斷是否是會(huì)員2、內(nèi)層判斷是否達(dá)到 相應(yīng)打折要求難點(diǎn)指導(dǎo):嵌套if選擇結(jié)構(gòu)中{}的使用講解需求說(shuō)明完成時(shí)間:20分鐘需求說(shuō)明:會(huì)員購(gòu)物時(shí),根據(jù)積分的不同享受不同的折扣計(jì)算會(huì)員購(gòu)物時(shí)獲得的折扣完成時(shí)間:20分鐘會(huì)員積分x

折扣x<2009折2000≤x<40008折4000≤x<80007折x≥80006折常見(jiàn)調(diào)試問(wèn)題及解決辦法代碼規(guī)范問(wèn)題共性問(wèn)題集中講解

該問(wèn)題屬于等值判斷解決方法:使用多重if選擇結(jié)構(gòu)實(shí)現(xiàn)使用switch選擇結(jié)構(gòu)解決使用多重if選擇結(jié)構(gòu)的實(shí)現(xiàn)代碼4、韓嫣參加計(jì)算機(jī)編程大賽如果獲得第一名,將參加麻省理工大學(xué)組織的1個(gè)月夏令營(yíng)如果獲得第二名,將獎(jiǎng)勵(lì)惠普筆記本電腦一部如果獲得第三名,將獎(jiǎng)勵(lì)移動(dòng)硬盤一個(gè)否則,不給任何獎(jiǎng)勵(lì)switch(表達(dá)式){

case

常量1:

語(yǔ)句;

break;

case

常量2:

語(yǔ)句;

break; …

default:

語(yǔ)句;}計(jì)算表達(dá)式的值如果等于常量1如果等于常量2如果沒(méi)有找到匹配的值switch選擇結(jié)構(gòu)intmingCi=1;switch(mingCi){ case

1:System.out.println("參加麻省理工大學(xué)組織的1個(gè)月夏令營(yíng)");

break;

case2:System.out.println("獎(jiǎng)勵(lì)惠普筆記本電腦一部");

break;

case3:System.out.println("獎(jiǎng)勵(lì)移動(dòng)硬盤一個(gè)");

break;

default:System.out.println("沒(méi)有任何獎(jiǎng)勵(lì)

");}第一名的情況下第二名的情況下第三名的情況下其他情況下如何使用switch選擇結(jié)構(gòu)演示示例4:使用switch選擇結(jié)構(gòu)使用switch選擇結(jié)構(gòu)解決問(wèn)題4intmingCi=1;switch(mingCi){ case

1:System.out.println("參加麻省理工大學(xué)組織的1個(gè)月夏令營(yíng)");

case2:System.out.println("獎(jiǎng)勵(lì)惠普筆記本電腦一部");

case3:System.out.println("獎(jiǎng)勵(lì)移動(dòng)硬盤一個(gè)");

default:System.out.println("沒(méi)有任何獎(jiǎng)勵(lì)

");}輸出結(jié)果是什么?如果需要每個(gè)case執(zhí)行完后跳出,在每個(gè)case后不要忘記寫break;int

mingCi=1;switch(mingCi){

case1:System.out.println("參加麻省理工大學(xué)組織的1個(gè)月夏令營(yíng)");

case2:System.out.println("獎(jiǎng)勵(lì)惠普筆記本電腦一部");

case2:System.out.println("獎(jiǎng)勵(lì)移動(dòng)硬盤一個(gè)");

default:System.out.println("沒(méi)有任何獎(jiǎng)勵(lì)");}case后面的常量必須各不相同代碼錯(cuò)誤int

mingCi=6;switch(mingCi){

default:System.out.println("沒(méi)有任何獎(jiǎng)勵(lì)");

case1:System.out.println("參加麻省理工大學(xué)組織的1個(gè)月夏令營(yíng)");

case2:System.out.println("獎(jiǎng)勵(lì)惠普筆記本電腦一部");

case3:System.out.println("獎(jiǎng)勵(lì)移動(dòng)硬盤一個(gè)");}輸出結(jié)果是什么?default塊順序可以變動(dòng),但要注意其執(zhí)行順序。通常,default塊放在末尾,也可以省略Stringday="星期一";switch(day){

case"星期一":System.out.println("星期一:青菜");

break;

case"星期二":System.out.println("星期二:魚(yú)");

break;……

default:}switch后面小括號(hào)中表達(dá)式的值必須是整型或字符型代碼錯(cuò)誤演示示例5:switch選擇結(jié)構(gòu)常見(jiàn)錯(cuò)誤相同點(diǎn)不同點(diǎn)switch選擇結(jié)構(gòu)多重if選擇結(jié)構(gòu)都是用來(lái)處理多分支條件的結(jié)構(gòu)只能處理等值條件判斷的情況,而且條件必須是整型變量或字符型變量沒(méi)有switch選擇結(jié)構(gòu)的限制,特別適合某個(gè)變量處于某個(gè)連續(xù)區(qū)間時(shí)的情況訓(xùn)練要點(diǎn):switch選擇結(jié)構(gòu)需求說(shuō)明:從登錄菜單跳轉(zhuǎn)到主菜單實(shí)現(xiàn)思路:1、使用數(shù)字標(biāo)識(shí)菜單號(hào)2、獲取用戶輸入的數(shù)字3、執(zhí)行相應(yīng)的操作難點(diǎn)指導(dǎo):提高程序容錯(cuò)性講解需求說(shuō)明完成時(shí)間:25分鐘常見(jiàn)調(diào)試問(wèn)題及解決辦法代碼規(guī)范問(wèn)題共性問(wèn)題集中講解為了使程序更加健壯,程序員在編碼時(shí)要考慮用戶可能出現(xiàn)的任何問(wèn)題,并且在程序中做出相應(yīng)的判

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論