亚洲精品中文免费|亚洲日韩中文字幕制服|久久精品亚洲免费|一本之道久久免费

      
      

            <dl id="hur0q"><div id="hur0q"></div></dl>

                C|do while的作用域和應(yīng)用場(chǎng)景

                do while語(yǔ)句是一個(gè)循環(huán)構(gòu)造,其工作方式與while循環(huán)類似,只是該語(yǔ)句總是至少執(zhí)行一次。執(zhí)行語(yǔ)句后,do while循環(huán)檢查條件。如果條件的計(jì)算結(jié)果為true,則執(zhí)行路徑跳回do-while循環(huán)的頂部并再次執(zhí)行。

                實(shí)際上,do while循環(huán)并不常用。將條件放在循環(huán)的底部會(huì)模糊循環(huán)條件,這可能會(huì)導(dǎo)致錯(cuò)誤。因此,許多開發(fā)人員建議避免do-while循環(huán)。

                do while的使用頻率雖然比while循環(huán)和for循環(huán)要低,但也有其適用場(chǎng)景,可以讓代碼更簡(jiǎn)潔。

                1 變量作用

                do…while在條件表達(dá)式中的作用域需要在do while的大括號(hào){}外(C語(yǔ)言使用{}定義語(yǔ)句塊),也就是說(shuō),while()中使用的變量不能在do{}內(nèi)定義,由此,其代碼塊的封裝性比while循環(huán)要弱。

                #include int main(){ int x = 0; // while()中使用的x 需在do while前聲明 do { printf( “Hello, world!” ); } while ( x != 0 ); getchar();}

                2 應(yīng)用場(chǎng)景

                2.1 用戶交互

                #include /* printf, scanf, puts, NULL */#include /* srand, rand */#include /* time */int main (){ int iSecret, iGuess; /* initialize random seed: */ srand (time(NULL)); /* generate secret number between 1 and 10: */ iSecret = rand() % 10 + 1; do { printf (“Guess the number (1 to 10): “); scanf (“%d”,&iGuess); // 如果不使用while(),此行代碼要寫兩次 if(iSecretiGuess) puts (“The secret number is higher”); } while(iSecret!=iGuess); puts (“Congratulations!”); return 0;}

                以下是類似的用戶交互情形

                #include int main (){ int c; puts (“Enter text. Include a dot (‘.’) in a sentence to exit:”); do { c=getchar(); // 如果不使用do while,則此行代碼要寫在while()內(nèi)或?qū)憙纱? putchar (c); } while(c != ‘.’); return 0;}

                2.2 讀取文件

                #include int main (){ FILE *fp; int c; int n = 0; fp = fopen(“file.txt”,”r”); if(fp == NULL) { perror(“打開文件時(shí)發(fā)生錯(cuò)誤”); return(-1); } do { c = fgetc(fp); // 也是一種交互的方式,上面實(shí)例也是鍵盤輸入,這里是從磁盤獲取數(shù)據(jù) if( feof(fp) ) break ; printf(“%c”, c); }while(1); fclose(fp); return(0);}

                do while控制結(jié)構(gòu)常用于輸入一個(gè)字符做判斷的情形:

                char c;do{ // do while控制結(jié)構(gòu)常用于輸入一個(gè)字符做判斷的情形int number;printf(“input number to look for:”);scanf(“%d”,&number);//search(number,num,name);printf(“continue ot not(Y/N)?”);fflush(stdin);scanf(“%c”,&c );}while(!(c==’N’||c==’n’));

                按條件輸入時(shí),do while用起來(lái)更自然:

                do{ printf(“Enter n(1–15):”);//要求階數(shù)為1~15 之間的奇數(shù) scanf(“%d”,&n);}while( ! ( (n>=1) && ( n <= 15 ) && ( n % 2 != 0 ) ) );

                做菜單設(shè)計(jì)與用戶交互時(shí),通常也使用do while。

                -End-

                鄭重聲明:本文內(nèi)容及圖片均整理自互聯(lián)網(wǎng),不代表本站立場(chǎng),版權(quán)歸原作者所有,如有侵權(quán)請(qǐng)聯(lián)系管理員(admin#wlmqw.com)刪除。
                用戶投稿
                上一篇 2022年6月13日 15:17
                下一篇 2022年6月13日 15:17

                相關(guān)推薦

                • ios手游模擬器(手游模擬器ios)

                  本文主要講的是ios手游模擬器,以及和手游模擬器ios相關(guān)的知識(shí),如果覺得本文對(duì)您有所幫助,不要忘了將本文分享給朋友。 哪個(gè)iOS模擬器能多開手游賬號(hào)?可以推薦個(gè)好用的模擬器給我嗎…

                  2022年11月27日
                • 分享4條發(fā)微商朋友圈的方法(微商朋友圈應(yīng)該怎么發(fā))

                  對(duì)于微商朋友來(lái)說(shuō),朋友圈的重要性不言而喻了。 那么微商的朋友圈到底該怎么發(fā)呢? 為什么同樣是經(jīng)營(yíng)一個(gè)朋友圈,有的微商看起來(lái)逼格滿滿,實(shí)際效果也不錯(cuò);而有的卻動(dòng)都不動(dòng)就被屏蔽甚至拉黑…

                  2022年11月27日
                • 短視頻策劃內(nèi)容的3個(gè)要點(diǎn)(短視頻策劃內(nèi)容怎么做)

                  短視頻在制作時(shí),內(nèi)容框架非常重要。如果直奔主題,然后結(jié)束,聚卓告訴你,這樣的短視頻已經(jīng)過時(shí)了?,F(xiàn)在的短視頻需要框架的,但不是任何框架,它需要一種易于理解和消化的框架。而且,現(xiàn)在大多…

                  2022年11月27日
                • 美團(tuán)第三季度實(shí)現(xiàn)營(yíng)收626億元,即時(shí)配送訂單量增至50億筆

                  新京報(bào)訊(記者秦勝南)11月25日,美團(tuán)發(fā)布業(yè)績(jī)公告顯示,第三季度營(yíng)收為626億元,較去年同比增長(zhǎng)28.2%,凈利潤(rùn)為12.2億元。第三季度,美團(tuán)即時(shí)配送訂單數(shù)增長(zhǎng)至50億筆。截至…

                  2022年11月27日
                • 存儲(chǔ)過程語(yǔ)法(sql server存儲(chǔ)過程語(yǔ)法)

                  今天小編給各位分享存儲(chǔ)過程語(yǔ)法的知識(shí),其中也會(huì)對(duì)sql server存儲(chǔ)過程語(yǔ)法進(jìn)行解釋,如果能碰巧解決你現(xiàn)在面臨的問題,別忘了關(guān)注本站,現(xiàn)在開始吧! oracle存儲(chǔ)過程基本語(yǔ)法…

                  2022年11月26日
                • 個(gè)人怎么做抖音帶貨(個(gè)人做抖音帶貨能賺錢嗎)

                  抖音如今是大家很熟悉的短視頻平臺(tái),不過現(xiàn)在的抖音卻不只是短視頻那么簡(jiǎn)單,它的功能非常豐富,其中一個(gè)就是可以帶貨,相信很多小伙伴都有在抖音上買過東西,抖音如今的變現(xiàn)能力也是不容小覷的…

                  2022年11月25日
                • 客服的崗位職責(zé)怎么寫(客服工作內(nèi)容及職責(zé))

                  各位小伙伴們大家周一好,又到了每周一給大家分享干貨內(nèi)容的時(shí)候啦~ 本期來(lái)跟大家分享一下客服工作管理流程以及客服崗位里面的每項(xiàng)職能崗位的核心細(xì)則,也是干貨滿滿推薦收藏~ 一.補(bǔ)償流程…

                  2022年11月25日
                • 小紅書平臺(tái)的一些機(jī)制及玩法詳解(小紅書玩法有哪些)

                  關(guān)于小紅書 一:小紅書平臺(tái)的一些機(jī)制 1. 筆記內(nèi)容的CES評(píng)分機(jī)制 2. 筆記流量入口與長(zhǎng)尾效應(yīng) 二:小紅書優(yōu)質(zhì)筆記的特點(diǎn)(分維度、類型分析) 1.筆記的本身架構(gòu)組成 維度 2.…

                  2022年11月25日
                • 百度關(guān)鍵詞快速排名的4大原理解析(百度怎么刷關(guān)鍵詞)

                  近期百度公告驚雷算法2.0,升級(jí)之快還是第一次吧,看來(lái)百度對(duì)于刷點(diǎn)擊行為是零容忍了。之前尹華峰SEO技術(shù)博客介紹過一篇如何使用刷點(diǎn)擊工具,其實(shí)市面上有很多這類SEO快速排名的軟件,…

                  2022年11月25日
                • 抖音世界杯投屏怎么弄 抖音看世界杯怎么看能投屏嗎

                  抖音作為短視頻平臺(tái)第一次進(jìn)軍世界杯直播,小編還是很期待的,畢竟每天沒事的時(shí)候都會(huì)刷一下抖音,看直播的話也是方便了不少,那抖音看世界杯可以投屏嗎?下面一起來(lái)了解一下。 抖音世界杯投屏…

                  2022年11月24日

                聯(lián)系我們

                聯(lián)系郵箱:admin#wlmqw.com
                工作時(shí)間:周一至周五,10:30-18:30,節(jié)假日休息