freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

c程序設(shè)計(jì)教程:第3章-結(jié)構(gòu)化編程基礎(chǔ)-閱讀頁

2024-10-19 16:41本頁面
  

【正文】 e=0。 coutscore=。 if ( score94 ) grade=39。 else if ( score79 ) grade=39。 else if ( score59 ) grade=39。 else grade=39。 coutgrade=gradeendl。 ? 注意如下兩種嵌套形式的 if語句是不同的 。 if ( bc ) c=a。 else c=b。 3. 條件運(yùn)算符 ? 對于下面形式的 if語句 if ( ab ) max=a。 可以用條件運(yùn)算符來實(shí)現(xiàn) 。 “(ab) ? a:b”是一個 “ 條件表達(dá)式 ” , 執(zhí)行過程: 如果 (ab) 條件為 true, 則條件表達(dá)式取 a值 , 否則取 b值 。 條件表達(dá)式一般形式為: 表達(dá)式 1? 表達(dá)式 2:表達(dá)式 3 它們的流程圖如圖 。 若表達(dá)式 1的值為 0(假 ), 則求解表達(dá)式 3, 此時表達(dá)式 3的值就是整個表達(dá)式的值 。 例如 ,max=(ab) ? a:b, 就是先求解條件表達(dá)式 , 再將它的值賦給 max。 因此 max = ( ab ) ? a:b 中的括號可以不要 , 即可以寫成: max=ab ? a:b ? 如果有 ab ? a:b+1,就相當(dāng)于 ab ? a:(b+1),而不相當(dāng)于 (ab ? a:b)+1 。 如果有以下條件表達(dá)式: ab ? a: cd ? c:d 它相當(dāng)于 ab ? a : (cd) ? c:d ? 如果 a=1, b=2, c=3, d=4, 則條件表達(dá)式的值等于 4。 如 x ? 39。 : 39。 x 是整型變量 , 若 x=0, 則條件表達(dá)式的值為 39。 表達(dá)式 2和表達(dá)式 3的類型也可以不同 , 此時條件表達(dá)式的值的類型為二者中較高的類型 。由于 , 比整型高 , 因此將 1轉(zhuǎn)換成實(shí)型值 。 ? if語句只有兩個分支可供選擇,而實(shí)際上又常常需要用到多分支的選擇。 ? 例如,學(xué)生成績分類 (90分以上為 “ 優(yōu) ” , 80~89分為 “ 良 ” , 70~ 79分為 “ 中 ” 等等 );工資統(tǒng)計(jì)分類;文化程度分類等。 switch語句的使用形式是: switch (表達(dá)式 ) { case 常量表達(dá)式 1: 語句 1。 case 常量表達(dá)式 2: 語句 2。 …… case 常量表達(dá)式 n 語句 n。 default 語句 n+1。 } ? 使用 switch語句的例子見下一節(jié)的 【 例 】 , 但必須注意以下幾點(diǎn): ① 每個 case中的 break語句使 switch語句只執(zhí)行一個 case中的語句 , 執(zhí)行到 break語句即從 switch語句中跳出 。 ② 當(dāng)不存在與表達(dá)式的值一致的常量表達(dá)式時 , 則執(zhí)行 default后面的語句;當(dāng) default部分省略時 ,則什么也不執(zhí)行就跳出 switch語句 。若表達(dá)式的值與某 case后的常量表達(dá)式的值相等,就執(zhí)行該 case后的語句。 ⑤ 所有常量表達(dá)式的值必須互不相同 , 而 case部分與 default部分的順序可以自由書寫 。 循環(huán)控制結(jié)構(gòu)設(shè)計(jì) 在許多實(shí)際問題中,都需要用到循環(huán)控制的方法,應(yīng)該注意比較各種循環(huán)控制結(jié)構(gòu)的用法及其特點(diǎn)。 ? 要特別注意 , while 后面的 ( )里是表達(dá)式而不是語句 , 表達(dá)式是沒有分號的 , 初學(xué)者常多加一個分號 , 而在括號后面的語句中又漏掉分號 。 【 例 】 從鍵盤接收輸入,用 Ctrl+Z鍵結(jié)束循環(huán)。 void main( ) { char ch。 } ? 這種形式的 while語句是由表達(dá)式取值完成結(jié)束條件的 。 ? 可用 Ctrl+Z鍵使得表達(dá)式的值為 0, 退出循環(huán) 。 We are here! //輸入可以有空格 We are here! //按回車鍵顯示讀取的內(nèi)容 Where are you? //繼續(xù)輸入 Where are you? //輸出 【 例 】 演示使用 while和 switch語句的例子。 void main( ) { int i=0,j=0,k=0。 while ((c)) //Exit with Ctrl+Z { switch (c) { case 39。: case 39。: case 39。: case 39。: case 39。: case 39。: case 39。: case 39。: case 39。: i++。 case 39。: k++。 default: j++。 } //結(jié)束 switch選擇 } //結(jié)束 while循環(huán) cout\n\n數(shù)字出現(xiàn) i+k次 \n。 cout字母出現(xiàn) j1次 \n。 ? 使用 Ctrl+Z退出程序 , 但不要使用回車鍵 , 否則字母計(jì)數(shù)將多記一次 。 do ~ while語句 ? do ~ while語句的形式是: do { 語句 } while ( 表達(dá)式 ) ; ? 在 do~while語句里,首先要執(zhí)行一次的是 do后面的語句,之后才判斷條件表達(dá)式。 ? do~while 語句和 while 語句的惟一區(qū)別就是:do~while語句不管表達(dá)式的值如何 , 首先執(zhí)行一次要循環(huán)執(zhí)行的語句 。 ? 而 while語句是首先判斷條件表達(dá)式 , 如果第 1次判斷時 , 其值為 0, 則不執(zhí)行循環(huán)語句 , 而執(zhí)行循環(huán)體下面的語句 。 注意不要遺忘 do~while語句中表達(dá)式右括號外面的分號 。 【 例 】 演示使用 while語句求兩個非 0整數(shù)之和。 void main( ){ int a, b, x。 while ( a!=0 amp。 b!=0 ) { x=a+b。 cinab。 include iostream using namespace std。 do{ cinab。 cout x= xendl。amp。 } 輸入: 0 0 輸出: x=0 ? 【 例 】 和 【 例 】 的區(qū)別是:當(dāng) a和 b全部輸入為 0時, 【 例 】 的程序不執(zhí)行 a+b 和cout兩個語句就跳出循環(huán);而 【 例 】 的程序是執(zhí)行了上述兩個語句后才跳出循環(huán),故它能在屏幕終端上顯示出 x=0的結(jié)果之后,再終止程序執(zhí)行。 此后求表達(dá)式 3的值 , 再返回來判斷表達(dá)式 2, 不為 0, 則再次執(zhí)行 ( )后的語句 。 ? 因此 , 若第 1次所求表達(dá)式 2的值就是 0, 則 for語句就結(jié)束循環(huán) , 即一次也沒有執(zhí)行 ( )后的語句 。 表達(dá)式 3。 include iostream include string using namespace std。 cinstr。 j=0。 } ? 運(yùn)行時輸入: abcdefghijklmnopqrstuvwxyz12,5 ? 運(yùn)行后輸出: 5,21zyxwvutsrqponmlkjihgfedcba ? 表達(dá)式 1僅在開始執(zhí)行 for語句時執(zhí)行一次 , 用來求控制循環(huán)的循環(huán)變量初始值 , 也就是字符串的長度 。 ? 表達(dá)式 3用于更新循環(huán)變量的值 , 在執(zhí)行循環(huán)語句后執(zhí)行j=j1操作 , 以便更新循環(huán)變量 j的值 , 供表達(dá)式 2求解 。 ? 在表達(dá)式 1和表達(dá)式 3省略的情況下 , 與 while語句等價 。這是因?yàn)樽鳛闂l件的表達(dá)式 2不出現(xiàn)時,編譯程序認(rèn)為其值恒為真。 ? for 語句的表達(dá)式可以缺省,這是它同 if語句、while語句及 dowhile 語句的區(qū)別之一。 ij。這兩個表達(dá)式都是從左到右計(jì)算,結(jié)果的類型和值是右操作數(shù)的類型和值。 ? break語句是中止語句 , 是從循環(huán)語句或 switch語句中跳出的一個極其方便的方法 。 【 例 】 已知產(chǎn)值及產(chǎn)值增長速度,編寫計(jì)算產(chǎn)值增長 1倍所需年數(shù)的程序。 include iostream using namespace std。 for( 。 ) { //第 6行 int y=0。 //輸入要求的增長率 cina。 float c1=c。 。 ++y。 } couta=a\tyear=yendl。 2. continue 語句 continue語句的形式是: continue。 ? 在 while和 do~while語句中,一執(zhí)行 continue語句, 則立即進(jìn)行 while后 ( )內(nèi)的表達(dá)式的判斷。 ? continue語句也可作為 if的執(zhí)行語句。 include iostream include string using namespace std。 while (++i=10){ if ( i%2==0) continue。 //輸出奇數(shù) } } 運(yùn)行輸出: 1 3 5 7 9 3. goto 語句 ? 結(jié)構(gòu)化程序設(shè)計(jì)不提倡使用 goto 語句 。 ? goto語句的一般形式是: goto 標(biāo)號; ? 該語句的功能是:它能無條件地轉(zhuǎn)移到標(biāo)有標(biāo)號的語句去執(zhí)行 。 標(biāo)號加到想用 goto語句轉(zhuǎn)去執(zhí)行的語句前面 。 ? 必須注意 , 它僅僅能轉(zhuǎn)到 goto所在函數(shù)內(nèi)的標(biāo)號上 ,不能轉(zhuǎn)到函數(shù)外 。 ? 實(shí)際上 , 在循環(huán)語句和開關(guān)語句中使用 break語句就能跳出 , 只是 break語句只能從最里一層跳出 。 這時完全是因?yàn)閷哟翁?, 使用它反而使程序易讀 。 include iostream using namespace std。 start: if(count10) goto end。 coutcount39。 ++count。 //返回執(zhí)行 if語句 end: coutendl。 ? 嵌套的規(guī)則是保證各自的正確結(jié)束條件 , 恰當(dāng)使用一對“ { }”號和出口注釋 , 既能增加可讀性 , 也易于發(fā)現(xiàn)錯誤 ,利于調(diào)試 。 典型例題及錯誤分析 典型例題 錯誤分析 【 例 】 教堂中來了 A、 B、 C三個新郎和 X、 Y、 Z三個新娘,問新人中的三位,他們互相與誰結(jié)婚。 ? A說他與 X結(jié)婚; X說她和 C結(jié)婚; C說他與 Z結(jié)婚 。他們說的都是假話,所以真實(shí)的情況是: X!=1 A不與 X結(jié)婚 X!=3 X不與 C結(jié)婚 Z!=3 C不與 Z結(jié)婚 X!=Z && X!=Z&& Y!=Z 三個新娘 互相不能結(jié)婚 ? 窮舉各種可能的情況,代入上述表達(dá)式中進(jìn)行推理運(yùn)算,符合上述情況的就是正確的結(jié)果,這種解題方法稱為 窮舉法 。 void main( ) { int X, Y, Z。 X=3。 Y=3。 Z =3。amp。amp。amp。a
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1