判斷與決策_選擇程序設計(1) .pptx
《判斷與決策_選擇程序設計(1) .pptx》由會員分享,可在線閱讀,更多相關《判斷與決策_選擇程序設計(1) .pptx(55頁珍藏版)》請在匯文網(wǎng)上搜索。
1、高級語言程序設計高級語言程序設計第第3章章 判斷與決策判斷與決策 選擇程序設計選擇程序設計 學習目標:判斷與決策問題求學習目標:判斷與決策問題求解解n算法表示方法算法表示方法n決策決策/判斷問題分析判斷問題分析n判斷決策條件判斷決策條件n選擇結(jié)構(gòu)選擇結(jié)構(gòu)n復雜條件表示復雜條件表示n回顧前面已經(jīng)解決過回顧前面已經(jīng)解決過的問題,分析其特點的問題,分析其特點n順序處理問題順序處理問題n用用順序結(jié)構(gòu)順序結(jié)構(gòu)表示表示輸入兩個整數(shù)求和輸出結(jié)果結(jié)束開始n稍稍復雜一點的問題稍稍復雜一點的問題,只用,只用順序結(jié)構(gòu)順序結(jié)構(gòu)是是不夠的,需要用不夠的,需要用選擇結(jié)構(gòu)選擇結(jié)構(gòu)表示判斷與決表示判斷與決策(本章的內(nèi)容),需
2、要用策(本章的內(nèi)容),需要用循環(huán)結(jié)構(gòu)循環(huán)結(jié)構(gòu)表表示重復(下一章)。示重復(下一章)。n巧妙的使用這三種結(jié)構(gòu)就可以解決復雜巧妙的使用這三種結(jié)構(gòu)就可以解決復雜的問題的問題問題問題n讓成績合格的學生通過讓成績合格的學生通過n判斷成績是否合格判斷成績是否合格n給定的一個整數(shù)是偶數(shù)嗎?給定的一個整數(shù)是偶數(shù)嗎?n奇偶奇偶判斷判斷n按成績把學生分成兩組:合格與不合格按成績把學生分成兩組:合格與不合格n判斷成績是大于等于判斷成績是大于等于60還是小于還是小于60n按成績把學生分成多組按成績把學生分成多組n判斷成績落在那個范圍判斷成績落在那個范圍n判斷某年是否為閏年判斷某年是否為閏年返回三種基本結(jié)構(gòu)三種基本結(jié)構(gòu)
3、n順序序結(jié)構(gòu)、構(gòu)、選擇結(jié)構(gòu)、循構(gòu)、循環(huán)結(jié)構(gòu)構(gòu)n已已經(jīng)證明,任何程序均可只用明,任何程序均可只用這三種三種結(jié)構(gòu)構(gòu)實現(xiàn)n堆疊和嵌套堆疊和嵌套n只用這三種結(jié)構(gòu)的程序,叫只用這三種結(jié)構(gòu)的程序,叫結(jié)構(gòu)化程序結(jié)構(gòu)化程序n這樣的程序設計就是這樣的程序設計就是結(jié)構(gòu)化程序設計結(jié)構(gòu)化程序設計6流程圖流程圖n起始框起始框 橢圓橢圓n處理框處理框 矩型矩型n判斷框判斷框 鉆石鉆石n流向線流向線三種結(jié)構(gòu)的流程圖三種結(jié)構(gòu)的流程圖順序結(jié)構(gòu)順序結(jié)構(gòu)順序結(jié)構(gòu)順序結(jié)構(gòu)選擇結(jié)構(gòu)選擇結(jié)構(gòu)選擇結(jié)構(gòu)選擇結(jié)構(gòu)truetruefalsefalsetruetruefalsefalse循環(huán)結(jié)構(gòu)循環(huán)結(jié)構(gòu)循環(huán)結(jié)構(gòu)循環(huán)結(jié)構(gòu)8結(jié)構(gòu)化程序的特點結(jié)構(gòu)化程序
4、的特點n單入口單入口n單出口單出口問題問題1:讓成績合格的學生通過:讓成績合格的學生通過n問題描述:問題描述:假設有一個計算機打字訓練教室,大一剛?cè)雽W假設有一個計算機打字訓練教室,大一剛?cè)雽W的同學都要到這個訓練教室練習打字。電腦自動考的同學都要到這個訓練教室練習打字。電腦自動考核,你的成績在核,你的成績在60分以上視為合格。訓練教室的分以上視為合格。訓練教室的門口有一個電腦控制的欄桿,它是一個門口有一個電腦控制的欄桿,它是一個“智能欄桿智能欄桿”,知道每一個參加訓練同學的當前訓練成績,因,知道每一個參加訓練同學的當前訓練成績,因此當你走進它時,他會獲取你的學號,如果你的成此當你走進它時,他會獲
5、取你的學號,如果你的成績大于或等于績大于或等于60,它將自動打開,允許你路過。,它將自動打開,允許你路過??上攵愕某煽円切∮诳上攵愕某煽円切∮?0會是什么樣子。請會是什么樣子。請你一定要認真訓練,不然你就不可能從那個教室里你一定要認真訓練,不然你就不可能從那個教室里出來噢出來噢。你知道這個你知道這個“智能欄桿智能欄桿”的程序怎么設的程序怎么設計嗎?計嗎?n輸入樣例輸入樣例1:80n輸出樣例輸出樣例1:good!you passed!n輸入樣例輸入樣例2:55n輸出樣例輸出樣例2:無:無分析分析n一個輸入一個輸入成績成績n判斷條件:成績判斷條件:成績=60n一個輸出或沒有輸出一個輸出
6、或沒有輸出n當成績當成績=60時,輸出時,輸出good!you passed!算法設計(描述算法)算法設計(描述算法)偽碼表示法:偽碼表示法:第一步:輸入成績;第一步:輸入成績;第二步:如果成績大于或等于第二步:如果成績大于或等于60,輸出輸出good!you passed!。n grade=60輸出“good!you passed!”真假從鍵盤讀成績grade框圖(流程圖)表示法框圖(流程圖)表示法代碼實現(xiàn)代碼實現(xiàn)n#includenint main(void)nn int grade;n /while(1)n /n scanf(%d,&grade);n if(grade=60)n prin
7、tf(good!you passed!n);n /n return 0;n要討論的幾個問題要討論的幾個問題n邏輯判斷如何表達?邏輯判斷如何表達?ngrade=60n關系運算關系運算:n大于大于,小于,小于=,小于等于,小于等于=60ngrade=80n邏輯判斷的結(jié)果是什么?邏輯判斷的結(jié)果是什么?n邏輯真邏輯真(true)、邏輯假、邏輯假(false)n關系運算的結(jié)果或者為真或者為假關系運算的結(jié)果或者為真或者為假n邏輯常量邏輯常量 1 邏輯真邏輯真(true)0 邏輯假邏輯假(false)n關系表達式的值或者為關系表達式的值或者為1或者為或者為0例:輸出兩個整數(shù)的關系表達式的值例:輸出兩個整數(shù)的
8、關系表達式的值關系運算的優(yōu)先級關系運算的優(yōu)先級n例例1:設有設有“int a,b,c,status;a=1;b=2;c=3;”,分析一下下面兩個語句中各種運算的順序:,分析一下下面兩個語句中各種運算的順序:n(1)printf(“%dn”,a+bc);/算術運算與關算術運算與關系運算混合系運算混合n(2)status=a b;/賦值運算與關系運算賦值運算與關系運算混合混合n關系運算的優(yōu)先級低于算術運算,高于賦值運關系運算的優(yōu)先級低于算術運算,高于賦值運算,而關系運算中比較大小的四個運算算,而關系運算中比較大小的四個運算,=,b c;n如果正確如果正確status的值會是多少?的值會是多少?n關
- 配套講稿:
如PPT文件的首頁顯示word圖標,表示該PPT已包含配套word講稿。雙擊word圖標可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國旗、國徽等圖片,僅作為作品整體效果示例展示,禁止商用。設計者僅對作品中獨創(chuàng)性部分享有著作權(quán)。
- 關 鍵 詞:
- 判斷與決策_選擇程序設計1 判斷 決策 選擇 程序設計