資源描述:
《選擇程序設(shè)計(jì)和循環(huán)程序設(shè)計(jì)》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、第二講選擇與循環(huán)程序設(shè)計(jì)(C語言的精髓)2.1選擇程序設(shè)計(jì)(分支)重要的兩句話:1、選擇是需要有條件的;2、選擇是殘酷的,根據(jù)條件的不同,有的被選擇,有的不被選擇。構(gòu)成條件的基礎(chǔ)1、關(guān)系運(yùn)算符與關(guān)系表達(dá)式2、邏輯運(yùn)算符和邏輯表達(dá)式1、關(guān)系運(yùn)算符與關(guān)系表達(dá)式關(guān)系運(yùn)算符有:>、>=、<、<=(優(yōu)先級(jí)高)==、!=(優(yōu)先級(jí)低)關(guān)系表達(dá)式由關(guān)系運(yùn)算符組成的有一定比較關(guān)系的表達(dá)式稱為關(guān)系表達(dá)式。例如:salary>=1500age>=60關(guān)系表達(dá)式的結(jié)果:成立或不成立邏輯成立:true邏輯不成立:false例如:5>3成立,true3>5不成立,fal
2、se2、邏輯運(yùn)算符和邏輯表達(dá)式當(dāng)條件比較復(fù)雜,一個(gè)關(guān)系表達(dá)式無法滿足實(shí)際需求時(shí),要用到多個(gè)條件的組合,此時(shí)需要用到邏輯運(yùn)算符和邏輯表達(dá)式。例如,構(gòu)成三角形的條件,滿足結(jié)婚的條件邏輯運(yùn)算符邏輯與:&&邏輯或:
3、
4、邏輯非:!邏輯與&&aba&&b111100010000aba
5、
6、b111101011000邏輯或
7、
8、由關(guān)系表達(dá)式和邏輯運(yùn)算符組成的表達(dá)式為邏輯表達(dá)式。例如:能構(gòu)成三角形的條件:a+b>c&&b+c>a&&c+a>b可以結(jié)婚法定年齡的條件:boy_age>=22&&girl_age>=20邏輯表達(dá)式在C語言中,在給出邏輯表達(dá)式的結(jié)果時(shí),
9、以數(shù)值1代表“真”,以數(shù)值0代表“假”。舉例:(1)5+2>4&&3==2其結(jié)果是0(2)5+2>4
10、
11、3==2其結(jié)果是1優(yōu)先級(jí):算術(shù)運(yùn)算符的優(yōu)先級(jí)要高于關(guān)系運(yùn)算符,關(guān)系運(yùn)算符的優(yōu)先級(jí)要高于邏輯運(yùn)算符。二級(jí)考試題已知a是一具體數(shù)值,則表達(dá)式a==3
12、
13、a!=3的結(jié)果是()A、0B、1C、2D、a的值不知道,無法確定注意:※在判斷一個(gè)具體的數(shù)值量是否為“真”時(shí),以0代表“假”,以非0代表“真”。#includemain(){while(1){printf("同志們好!");printf("首長好!");}printf(
14、"同志們辛苦了!");printf("為人民服務(wù)!");}#include#includemain(){while(1){printf("同志們好!");printf("首長好!");Sleep(1000);}printf("同志們辛苦了!");printf("為人民服務(wù)!");}不斷輸出:同志們好首長好結(jié)論:死循環(huán)按Ctrl+break終止死循環(huán)#includemain(){while(0){printf("同志們好");printf("首長好");}
15、printf("同志們辛苦了");printf("為人民服務(wù)");}選擇程序在C語言中的具體實(shí)施if語句switch….case結(jié)構(gòu)(略)if語句if語句用來判定所給定的條件是否成立,根據(jù)判定的結(jié)果(真或假)決定執(zhí)行不同的分支。重要規(guī)則:滿足條件,執(zhí)行相應(yīng)的分支;不滿足條件,順序執(zhí)行。if語句的幾種形式純if語句(枚舉法)if…else結(jié)構(gòu)if…elseif…else結(jié)構(gòu)if語句的嵌套將所有的條件全部羅列出來,為每個(gè)條件給出相應(yīng)的執(zhí)行語句。功能最強(qiáng)大的語句之一。純if語句(枚舉法)舉例:輸入一個(gè)學(xué)生的成績,如果大于等于60,則輸出“恭
16、喜,你通過了!”,否則輸出“未通過,好好準(zhǔn)備補(bǔ)考”。#includemain(){intscore;scanf("%d",&score);if(score>=60)printf("恭喜,你通過了!");if(score<60)printf("未通過,好好準(zhǔn)備補(bǔ)考");}舉例:輸入一個(gè)成績score若score<60,輸出“不及格”若60<=score<70,輸出“及格”若70<=score<80,輸出“中”若80<=score<90,輸出“良好”若score>=80,輸出“優(yōu)秀”用if…elseif…else完成。#incl
17、udemain(){intscore;printf("請(qǐng)輸入一個(gè)分?jǐn)?shù):");scanf("%d",&score);if(score>=90&&score<=100)printf("優(yōu)");if(score>=80&&score<=89)printf("良");if(score>=70&&score<=79)printf("中");if(score>=60&&score<=99)printf("及格");if(score>=0&&score<=59)printf("不及格");}錯(cuò)誤寫法if(90<=sco
18、re<=100)printf("優(yōu)");石頭、剪刀、布游戲#include#include#include