<address id="ousso"></address>
<form id="ousso"><track id="ousso"><big id="ousso"></big></track></form>
  1. C語言

    C語言算法及三種基本程序結構

    時間:2025-03-21 10:04:11 C語言 我要投稿

    C語言算法及三種基本程序結構

      大家知道C語言都有哪些算法嗎?這些算法的程序結構是怎么樣的呢?下面小編為大家整理了C語言算法及三種基本程序結構,希望能幫到大家!

      算法

      做任何事情都有一定的步驟。為解決一個問題而采取的方法和步驟,就稱為算法。

      算法是一個基本的概念,但也是一門深奧的學問,小到如何輸出九九乘法表,如何對一組數據進行排序,大到如何控制飛行器的姿態,如何讓無人機壁障。

      這里主要是向大家闡述一下算法的概念,對于初學者,涉及到的算法都很簡單,一般不會成為學習的障礙,我們會在后面的實例中逐漸向大家滲透具體的算法。

      請大家思考一個問題:如何求1×2×3×4×5的值。

      最原始方法:

      步驟1:先求1×2,得到結果2。

      步驟2:將步驟1得到的乘積2乘以3,得到結果6。

      步驟3:將6再乘以4,得24。

      步驟4:將24再乘以5,得120。

      這樣的算法雖然正確,但太繁。

      改進的算法:

      S1:使t=1

      S2:使i=2

      S3:使 t×i,乘積仍然放在在變量t中,可表示為 t×i -> t

      S4:使i的值+1,即 i+1 -> i

      S5:如果i≤5,返回重新執行步驟S3以及其后的S4和S5;否則,算法結束。

      如果計算100!只需將“S5:若i≤5”改成“i≤100”即可。

      如果改成求1×3×5×7×9×11,算法也只需做很少的改動:

      S1:1 -> t

      S2:3 -> i

      S3:t×i -> t

      S4:i+2 -> i

      S5:若i≤11,返回S3;否則,結束。

      該算法不僅正確,而且是計算機較好的算法,因為計算機是高速運算的自動機器,實現循環輕而易舉。

      三種基本程序結構

      幾乎所有編程語言,包括C語言,都會有三種基本的程序結構:順序結構、選擇結構和循環結構。

      順序結構

      順序結構就是一條一條地從上到下執行語句,所有的語句都會被執行到,執行過的語句不會再次執行。

      例如,求1+2+3+4+5的和,就可以一個數一個數地依次累加。

      選擇結構

      選擇結構就是根據條件來判斷執行哪些語句,如果給定的條件成立,就執行相應的語句,如果不成立,就執行另外一些語句。

      例如,根據用戶輸入的年齡來輸出不同的內容:

    年齡小于18你還未成年,應該好好學習
    大于等于18,小于等于30珍惜青春,多做有益的事情
    大于30,小于60社會中堅力量,工作的同時注意身體
    大于等于60請您安享晚年,我們會記得您對社會的貢獻

      用戶輸入年齡,程序會做出判斷,根據不同的年齡輸出不同的內容。這四個輸出語句,只有一個被執行,其他三個被跳過,沒有執行。

      循環結構

      循環結構就是在達到指定條件前,重復執行某些語句。

      例如,上面說到的計算 100! 的值,就會重復執行 S3、S4。

      最后,我們用雙重循環結構來輸出九九乘法表:

      #includeint main(){int i, j;for(i=1; i<=9; i++){for(j=1; j<=i; j++){printf("%-3d ", i*j); // -3d 表示輸出整數,寬度為3(占3個字符),左對齊}printf(" ");}return 0;}

    【C語言算法及三種基本程序結構】相關文章:

    C語言算法和三種基本程序結構06-05

    C語言算法和三種基本程序結構10-21

    C語言基本算法09-09

    c語言的排序算法07-22

    C語言中三種常見排序算法分析07-27

    C語言的四種程序結構05-06

    c語言排序的幾種算法10-16

    C語言奇偶排序算法08-05

    最常用的c語言算法07-18

    <address id="ousso"></address>
    <form id="ousso"><track id="ousso"><big id="ousso"></big></track></form>
    1. 日日做夜狠狠爱欧美黑人