久久精品国产亚洲高清|精品日韩中文乱码在线|亚洲va中文字幕无码久|伊人久久综合狼伊人久久|亚洲不卡av不卡一区二区|精品久久久久久久蜜臀AV|国产精品19久久久久久不卡|国产男女猛烈视频在线观看麻豆

    1. <style id="76ofp"></style>

      <style id="76ofp"></style>
      <rt id="76ofp"></rt>
      <form id="76ofp"><optgroup id="76ofp"></optgroup></form>
      1. 千鋒教育-做有情懷、有良心、有品質(zhì)的職業(yè)教育機構(gòu)

        手機站
        千鋒教育

        千鋒學習站 | 隨時隨地免費學

        千鋒教育

        掃一掃進入千鋒手機站

        領(lǐng)取全套視頻
        千鋒教育

        關(guān)注千鋒學習站小程序
        隨時隨地免費學習課程

        當前位置:首頁  >  技術(shù)干貨  > 為什么C/C用順序結(jié)構(gòu)、選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu)就能實現(xiàn)所有功能?

        為什么C/C用順序結(jié)構(gòu)、選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu)就能實現(xiàn)所有功能?

        來源:千鋒教育
        發(fā)布人:xqq
        時間: 2023-10-11 07:21:27 1696980087

        一、為什么C/C用順序結(jié)構(gòu)、選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu)就能實現(xiàn)所有功能

        其實只是說結(jié)構(gòu)化語言,可以用順序結(jié)構(gòu)、選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu)來描述全部的算法而已。

        順序結(jié)構(gòu):從頭到尾一句接著一句的執(zhí)行下來,直到執(zhí)行完最后一句;

        選擇結(jié)構(gòu):到某個節(jié)點后,會根據(jù)一次判斷的結(jié)果來決定之后向哪一個分支方向執(zhí)行;

        循環(huán)結(jié)構(gòu):循環(huán)結(jié)構(gòu)有一個循環(huán)體,循環(huán)體里是一段代碼。對于循環(huán)結(jié)構(gòu)來說,關(guān)鍵在于根據(jù)判斷的結(jié)果,來決定循環(huán)體執(zhí)行多少次;

        注:在邏輯上有一種bool類型(也叫boolean類型,布爾類型),只有兩個值,即真和假。C語言的判斷表達式最終的值就是一個bool類型,這個判斷表達式的bool值就決定了選擇結(jié)構(gòu)如何選擇,循環(huán)結(jié)構(gòu)如何循環(huán)。

        需要編程解決的問題邏輯紛繁復雜,程序設(shè)計語言里面為什么只有三種基本的程序結(jié)構(gòu)就夠用了?

        對于程序設(shè)計語言中的三種基本結(jié)構(gòu):順序、選擇、循環(huán),大家應(yīng)該都比較熟悉了,確實也只有這些。

        其實,這個問題是經(jīng)過嚴格證明過的。1966年,計算機科學家 Bohm 和 Jacopini 證明了這樣的事實:任何簡單或復雜的算法都可以由順序結(jié)構(gòu)、選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu)這三種基本結(jié)構(gòu)組合而成。所以,這三種結(jié)構(gòu)就被稱為程序設(shè)計的三種基本結(jié)構(gòu)。也是 結(jié)構(gòu)化程序設(shè)計 必須采用的結(jié)構(gòu)。想詳細了解的可以去看下論文:Bohm C., Jacopini G. “Flow diagrams, Turing machines and languages with only two formation rules.” Communications of the Association for Computing Machinery, Vol.9, pp. 366–371. 1966.

        荷蘭學者Dijkstra1968年提出了“結(jié)構(gòu)化程序設(shè)計”的思想,它規(guī)定了一套方法,使程序具有合理的結(jié)構(gòu),以保證和驗證程序的正確性,這種方法要求程序設(shè)計者不能隨心所欲地編寫程序,而要按照一定的結(jié)構(gòu)形式來設(shè)計和編寫程序,它的一個重要目的是使程序具有良好的結(jié)構(gòu),使程序易于設(shè)計,易于理解,易于調(diào)試修改,以提高設(shè)計和維護程序工作的效率。

        結(jié)構(gòu)化程序規(guī)定了以下三種基本結(jié)構(gòu)作為程序的基本單元: 以上三種基本結(jié)構(gòu)可以派生出其它形式的結(jié)構(gòu).由這三種基本結(jié)構(gòu)所構(gòu)成的算法可以處理任何復雜的問題.所謂結(jié)構(gòu)化程序就是由這三種基本結(jié)構(gòu)所組成的程序.可以看到,三種基本結(jié)構(gòu)都具有以下特點:①有一個入口.②有一個出口.③結(jié)構(gòu)中每一部分都應(yīng)當有被執(zhí)行到的機會,也就是說,每一部分都應(yīng)當有一條從入口到出口的路徑通過它(至少通過一次).④沒有死循環(huán)(無終止的循環(huán)).

        按結(jié)構(gòu)化程序設(shè)計方法設(shè)計出的程序優(yōu)點是:結(jié)構(gòu)良好、各模塊間的關(guān)系清晰簡單、每一模塊內(nèi)都由基本單元組成。這樣設(shè)計出的程序清晰易讀,可理解性好,容易設(shè)計,容易驗證其正確性,也容易維護。同時,由于采用了“自頂向下、逐步細化”的實施方法,能有效地組織人們的智力,有利于軟件的工程化開發(fā)。

        延伸閱讀:

        二、goto語句

        C語言提供了可以使用的goto語句和標記跳轉(zhuǎn)的標號。理論上goto語句沒有使用必要(容易代碼邏輯錯造成隨意跳轉(zhuǎn)),但在深層循環(huán)嵌套使用break達不到目的。而可以使用goto可以解決

        語法

        標號:

        ??語句;

        if(表達式)

        ??goto 標號;

        標號:表達需要跳轉(zhuǎn)的位置

        goto 標號:跳到哪個標號去

        聲明:本站稿件版權(quán)均屬千鋒教育所有,未經(jīng)許可不得擅自轉(zhuǎn)載。
        10年以上業(yè)內(nèi)強師集結(jié),手把手帶你蛻變精英
        請您保持通訊暢通,專屬學習老師24小時內(nèi)將與您1V1溝通
        免費領(lǐng)取
        今日已有369人領(lǐng)取成功
        劉同學 138****2860 剛剛成功領(lǐng)取
        王同學 131****2015 剛剛成功領(lǐng)取
        張同學 133****4652 剛剛成功領(lǐng)取
        李同學 135****8607 剛剛成功領(lǐng)取
        楊同學 132****5667 剛剛成功領(lǐng)取
        岳同學 134****6652 剛剛成功領(lǐng)取
        梁同學 157****2950 剛剛成功領(lǐng)取
        劉同學 189****1015 剛剛成功領(lǐng)取
        張同學 155****4678 剛剛成功領(lǐng)取
        鄒同學 139****2907 剛剛成功領(lǐng)取
        董同學 138****2867 剛剛成功領(lǐng)取
        周同學 136****3602 剛剛成功領(lǐng)取
        相關(guān)推薦HOT
        軟件架構(gòu)如何能夠滿足ASPICE流程?

        一、軟件架構(gòu)如何能夠滿足ASPICE流程架構(gòu)的用途是把整個產(chǎn)品劃分為更為細節(jié)的板塊:軟件、硬件、通信等。在這個基礎(chǔ)上軟件整體將按照用途、功能...詳情>>

        2023-10-11 08:47:00
        紅黑樹為什么叫紅黑樹?

        一、紅黑樹叫紅黑樹的原因紅黑樹(Red-Black Tree)是一種自平衡的二叉搜索樹(Binary Search Tree),其在插入和刪除操作時能夠自動調(diào)整樹的結(jié)...詳情>>

        2023-10-11 08:42:41
        為什么數(shù)組索引數(shù)據(jù)那么快速、有效?

        一、數(shù)組索引數(shù)據(jù)快速、有效的原因1、連續(xù)內(nèi)存存儲數(shù)組在內(nèi)存中是連續(xù)存儲的,數(shù)組的元素在內(nèi)存中按照一定的順序排列,相鄰元素之間沒有間隔。...詳情>>

        2023-10-11 08:36:19
        數(shù)據(jù)結(jié)構(gòu)里的逐點插入法、排序二叉樹是什么?

        一、數(shù)據(jù)結(jié)構(gòu)里的逐點插入法、排序二叉樹逐點插入法三角剖分是一種研究方法。三角剖分≠TIN三角剖分是代數(shù)拓撲學里最基本的研究方法。 以曲面為...詳情>>

        2023-10-11 08:08:01
        在數(shù)據(jù)結(jié)構(gòu)中i=L->length是什么意思?

        一、在數(shù)據(jù)結(jié)構(gòu)中i=L->length是什么意思在數(shù)據(jù)結(jié)構(gòu)中,i=L->length通常表示一個線性表L的長度,即L中元素的個數(shù)。線性表是一種數(shù)據(jù)結(jié)構(gòu),它由n...詳情>>

        2023-10-11 07:54:48
        民和| 洪湖市| 独山县| 江都市| 固镇县| 思南县| 柘荣县| 库尔勒市| 石柱| 贡山| 信丰县| 铁岭县| 闸北区| 炉霍县| 宁夏| 阿克陶县| 宣威市| 肃北| 家居| 涪陵区| 齐齐哈尔市| 房产| 明光市| 新沂市| 新竹县| 桃园市| 青海省| 聊城市| 库尔勒市| 方城县| 卢湾区| 永顺县| 柘荣县| 科尔| 晴隆县| 海兴县| 宜阳县| 土默特右旗| 武功县| 行唐县| 乌苏市|