迴圈功能是人讓計算機做多次模擬,減少人的消耗,提高解題效率和解題方法。
畢竟計算機做迴圈最多消耗一下cpu和記憶體,人要做迴圈就得消耗腦(shi)力(wu)了。
迴圈是偷懶的必備技能。
計算機可以在短時間批量處理成千上萬條指令,但是這些指令如果全是人來編輯輸入,是不是得懶的半死呢。
所以想要用程式設計中的迴圈來偷懶,我們就要學會找規律,找到題目中的規則,構造模型,利用迴圈合理偷懶。
當然迴圈結構要和我們已經學的順序結構和分支結構相結合,後面還要和陣列進行結合。
說了那麼多了,引入正題,
迴圈結構分為for語句和while語句,迴圈可以巢狀,稱為多重迴圈。
迴圈語句格式如下:
格式1
for(控制變數初始化表示式;條件表示式;增量表示式)
格式2:
for(控制變數初始化表示式;條件表示式;增量表示式)
語句1說明:語句1是for迴圈語句的迴圈體,它將在滿足條件的情況下被重複執行。只執行乙個語句可省略大括號。
for語句的執行過程可由以下4步來描述。
(1)執行「控制變數初始化語句」,使控制變數獲得乙個初值。
(2)判斷控制變數是否滿足「條件表示式」,若滿足條件則執行一遍迴圈體,否則結束整個for語句,繼續執行for迴圈下面的句子。
(3)根據增量表示式,計算出控制變數所得到的新值
(4)自動轉到第(2)步
注:結束時最後執行的是第二步,當條件不滿足時迴圈終止。
(1)將控制變數從1變到100,增量為1
for(int i=1;i<=100;++i)
(2)將控制變數從100變到1,增量為-1
for(int i=100;i>=1;--i)
(3)控制變數從7變到77,增量為7
for(int i=7;i<=77;i+=7)
(4)控制變數從20變到2,增量為-2
for(int i=20;i>=2;i-=2)
(5)按所示數列改變控制變數值:99、88、77、66、55、44、33、22、11、0,增量為-11
for(int j=99;j>=0;j-=11)
(6)控制變數i和j共同進行迴圈控制,i從1變到99,j從2變到100,增量均為2。
for(int i=1,j=2;i<=99&&j<=100;i+=2,j+=2)
需要說明的是:可以在for迴圈「 控制變數初始化語句」中宣告變數(如上面最後3個例子),這些變數只在for迴圈結構中有效,離開了該for結構,變數就無效了。
例題:利用for迴圈,計算輸出1+2+…+100的和
#include using namespace std;
int main ()
輸出1—100之間所有偶數。
【方法1】可以想到對於1-100之間的100個數字i,直接重複進行判斷,如果i是偶數,則輸出i的值。
#include using namespace std;
int main()
說明:迴圈體部分由多個語句構成,應由一對花括號括起來,構成乙個語句塊的形式。
迴圈語句時,迴圈體的語句相對於while縮排兩格。
格式2while(條件表示式)
語句1;
說明:語句1是while迴圈語句的迴圈體,它將在滿足條件的情況下被重複執行。
(1)計算作為迴圈控制條件表示式的值,得到邏輯真或假,假定用m表示。
(2)若m為真,則執行了一遍迴圈體,否則離開迴圈,結束整個while語句的執行。
(3)迴圈體的所有語句執行結束後,自動轉向第(1)步執行。
(1) i=0;
while (i<10)
++i;
功能:當i的值小於10,重複執行++i語句
(2) cin>>x;
while(x<0)
cin>>x;
功能:當輸入的資料小於0時,重複讀資料。
例題:求s=1 +2 +3……+n,當加到第幾項時,s的值會超過1000?
#include using namespace std;
int main ()
cout《迴圈一脈博大精深,這裡只做簡單介紹,若有問題或不足,歡迎指正。
C 入門 迴圈的基礎練習小記
今天練習了c 迴圈結構的基礎篇,在這裡記錄總結。疏失之處,懇請指正!問題一 經典的猴子吃桃問題!猴子第一天摘下若干個桃子,當即吃了一半,還不過癮,又多吃了乙個。第二天早上又將剩下的桃子吃掉一半,又多吃了乙個。以後每天早上都吃了前一天剩下的一半零乙個。到第十天早上再想吃時,就只剩乙個桃子了。求第一天猴...
c 入門 for迴圈
如果乙個迴圈和的條件和數字有關,用for迴圈會更為簡便 for int i 0 i 100 i for int i 0 i 100 i int i 1 while i 100 i 1 while i 100 這是輸出1 100兩次的for迴圈和等效while迴圈 可以看出for迴圈的優勢 換言之,如...
python基礎入門 random模組
最常用的函式有如下 random.randint random.randint 1,10 語句的含義是產生1至10 包含1與10 的乙個隨機數 整數int型 引數為整數不可為浮點數否則會報錯 random.randint 20,10 該語句是錯誤的。下限必須小於或等於上限。random.random...