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

正文內(nèi)容

★第05章c的流程控制語(yǔ)句(編輯修改稿)

2025-02-09 07:54 本頁(yè)面
 

【文章內(nèi)容簡(jiǎn)介】 串: \n。 do{ (c)。 coutc。 }while(c!=39。\n39。)。 } 從例 ,本例用 do?while 語(yǔ)句時(shí),程序最簡(jiǎn),其次為 for語(yǔ)句,再次為 while語(yǔ)句。 循環(huán)的嵌套及其應(yīng)用 ?循環(huán)的嵌套:循環(huán)的內(nèi)嵌語(yǔ)句也可以是循環(huán)語(yǔ)句。 ?例 輸出 1000以內(nèi)所有完數(shù)。“完數(shù)”是指與其因子之和相等的數(shù)。例如 6=1+ 2+ 3,即 6是完數(shù)。輸出完數(shù)按如下形式,例如,對(duì)于完數(shù) 6,應(yīng)顯示: 6=1+2+3 ?分析: ⑴ sum—— 保存一個(gè)數(shù)的因子和; ⑵ i—— 1000以內(nèi)的一個(gè)數(shù),初值為 2,終值為 1000; ⑶ j —— i的試探因子,取值從 1到 i/2。 因 1是 i的因子,故直接作為 sum的初值, j的初值為 2。若 i%j為 0,則說(shuō)明 j是 i的因子,則 sum+=j。 include void main(void) { int i, //1000以內(nèi)的一個(gè)數(shù) j, //i的試探因子 sum。//i的因子和 for(i=2。i=1000。i++) //外層 for語(yǔ)句 { for(sum=1,j=2。j=i/2。j++)//內(nèi)層 for語(yǔ)句 if(i%j==0) sum+=j。 if(sum==i) //i是完數(shù),按指定格式輸出 { couti=1”。 for(j=2。j=i/2。j++) //因未存 i的因子,需再求 if(i%j==0) cout39。+39。j。 coutendl。 } } } 轉(zhuǎn)向語(yǔ)句 ?goto語(yǔ)句是一條非常簡(jiǎn)單的無(wú)條件轉(zhuǎn)向語(yǔ)句,它可以將程序的執(zhí)行流程轉(zhuǎn)到程序中的任何位置,通常是從它所在的地方轉(zhuǎn)移到帶有標(biāo)號(hào)的語(yǔ)句處。 ?goto語(yǔ)句與條件語(yǔ)句組合,可形成當(dāng)型和直到型循環(huán)。 ?濫用 goto語(yǔ)句,會(huì)導(dǎo)致程序流程過(guò)于復(fù)雜,降低程序的可讀性、可維護(hù)性等。 ?軟件危機(jī)爆發(fā)后, goto語(yǔ)句一度成為爭(zhēng)論的焦點(diǎn)。 ?結(jié)構(gòu)化程序設(shè)計(jì)為了保持程序結(jié)構(gòu)的 單入口、單出口特性,嚴(yán)格限制直接使用 goto語(yǔ)句,但考慮到有時(shí)不得不改變程序執(zhí)行的流程, C++語(yǔ)言提供了功能受到限制的轉(zhuǎn)向語(yǔ)句 break和 continue來(lái)替代 goto語(yǔ)句。 break語(yǔ)句 ?格式: break。 該語(yǔ)句只用在 switch或循環(huán)語(yǔ)句中。 ?用在開(kāi)關(guān)語(yǔ)句 switch中的某個(gè)分支語(yǔ)句中,其作用是結(jié)束開(kāi)關(guān)語(yǔ)句的執(zhí)行,并把控制轉(zhuǎn)移到該開(kāi)關(guān)語(yǔ)句之后的第一個(gè)語(yǔ)句執(zhí)行。 ?用在循環(huán)語(yǔ)句的循環(huán)體中,當(dāng)執(zhí)行到 break語(yǔ)句時(shí),直接結(jié)束該循環(huán)語(yǔ)句的執(zhí)行,把控制轉(zhuǎn)移到緊跟該循環(huán)語(yǔ)句之后的語(yǔ)句執(zhí)行。 例 判別所輸入的一個(gè)大于 1的正整數(shù)是否是素?cái)?shù)。 include include void main(void) { int x,i,j。 //x存放所輸入的正整數(shù) cout輸入兩個(gè)大于 1的正整數(shù)? 。 cinx。 for(i=2,j=(int)sqrt(x)。i=j。i++) if(x%i==0) break。 if(ij) coutx是素?cái)?shù)! \n。 else coutx不是素?cái)?shù)! \n。 } 若 x%i為 0,說(shuō)明 i是 x的因子,即 x不可能是素?cái)?shù),無(wú)需再做后續(xù)的循環(huán)。因此,用 break語(yǔ)句提前結(jié)束循環(huán)。 for有兩個(gè)出口: ?ij: 說(shuō)明 x沒(méi)有大于 2和小于自身的因子,即 x是素?cái)?shù)。 ?x%i==0: 說(shuō)明 x不可能是素?cái)?shù),此時(shí) i肯定小于等于 j。 根據(jù) i與 j的關(guān)系來(lái)確定是何種情況結(jié)束 for循環(huán)的。 ? 特別關(guān)注:當(dāng)循環(huán)語(yǔ)句存在多個(gè)結(jié)束出口時(shí),通常會(huì)在該循環(huán)結(jié)束后,對(duì)不同結(jié)束出口作出不同的處理,因此,正確區(qū)分不同結(jié)束出口是非常重要的。 ? 問(wèn)題:例 for語(yǔ)句 能否不用 break語(yǔ)句?若能,如何修改 for語(yǔ)句? continue語(yǔ)句 ?格式: continue。 只用在循環(huán)語(yǔ)句的循環(huán)體中,作用是結(jié)束本次循環(huán)的循環(huán)體,提前進(jìn)入下一次循環(huán)。對(duì)于 while和do?while 循環(huán)來(lái)說(shuō),若遇到 continue,則跳到循環(huán) 表達(dá)式 的位置;而對(duì)于 for循環(huán)來(lái)說(shuō),則跳到 for循環(huán)的 表達(dá)式 3處。 ?與 break語(yǔ)句的區(qū)別: break是結(jié)束循環(huán); continue是結(jié)束本次循環(huán),提前進(jìn)入下一次循環(huán)。 ?例 輸入兩個(gè)大于 1的正整數(shù)并輸出。若輸入有誤,則給出提示并允許重新輸入,直到輸入正確為止。 ?分析: ⑴檢查輸入數(shù)據(jù)很重要。例如在例 ,若運(yùn)行時(shí)輸入整數(shù) 1,程序輸出也是 1是素?cái)?shù) !。程序運(yùn)行時(shí),難免輸入出錯(cuò),應(yīng)允許用戶重新輸入,直到輸入正確為止,除非特殊場(chǎng)合,如用戶身份驗(yàn)證等。 ⑵為了便于輸入出錯(cuò)時(shí)重新輸入,程序使用 do?while循環(huán),并設(shè)置一個(gè)輸入出錯(cuò)標(biāo)志 error, 用作輸出不同提示信息的依據(jù)和循環(huán)結(jié)束條件。 include void main(void) { int x,y, //x、 y分別存放所輸入的正整數(shù) error=0。//輸入出錯(cuò)標(biāo)志。為 1時(shí)出錯(cuò),為 0時(shí)正常 cout輸入兩個(gè)大于 1的正整數(shù)? 。 do{ if(error) cout\n\n輸入無(wú)效! \n重輸兩個(gè)大于 1的正整數(shù)? 。 error=0。 cinx。 if(x2){ error=1。 continue。 } ciny。 if(y2) error=1。 }while(error)。 //error為 1表示輸入出錯(cuò),需要重新輸入 cout\n\n輸入的兩個(gè)數(shù)為 x39。,39。yendl。 } goto語(yǔ)句簡(jiǎn)介 * ?標(biāo)號(hào) label:S S是任一語(yǔ)句,包括空語(yǔ)句; label為語(yǔ)句標(biāo)號(hào),簡(jiǎn)稱為標(biāo)號(hào),采用標(biāo)識(shí)符。標(biāo)號(hào)無(wú)需定義,可直接使用。 ?goto語(yǔ)句 goto label。 其中, label是語(yǔ)句標(biāo)號(hào),當(dāng)執(zhí)行到該語(yǔ)句時(shí),無(wú)條件地將控制轉(zhuǎn)移到標(biāo)有該標(biāo)號(hào)的語(yǔ)句處執(zhí)行。 *goto語(yǔ)句的主要用途 ?從循環(huán)體內(nèi)轉(zhuǎn)移到循環(huán)體外:但可用 break或continue替代。 ?從多層循環(huán)的內(nèi)層跳到外層循環(huán)外:但這種用法不符合結(jié)構(gòu)化編程原則,不提倡使用。 ?不允許從循環(huán)語(yǔ)句的外面轉(zhuǎn)移到循環(huán)語(yǔ)句的里面。 ?與 if語(yǔ)句構(gòu)成循環(huán):如例 。但可由 while、do?while 和 for取代,因此也不提倡這樣使用。 例 用 goto和 if構(gòu)成循環(huán),求 1+2+?+100 的值。 include void main(void)
點(diǎn)擊復(fù)制文檔內(nèi)容
黨政相關(guān)相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1