1樓:顧永康
for (表示式1;表示式2;表示式3)?
其中:表示式1:通常為賦值表示式,用來確定迴圈結構中的控制迴圈次數的變數的初始值,實現迴圈控制變數的初始化。
表示式2:通常為關係表示式或邏輯表示式,用來判斷迴圈是否繼續進行的條件,將迴圈控制變數與某一值進行比較,以決定是否退出迴圈。
表示式3:通常為表示式語句,用來描述迴圈控制變數的變化,多數情況下為自增/自減表示式(複合加/減語句),實現對迴圈控制變數的修改。
迴圈體(語句序列):當迴圈條件滿足時應該執行的語句序列。可以是簡單語句、複合語句。若只有一條語句,則可以省略{}。
執行過程:
1)計算表示式1的值,為迴圈控制變數賦初值。2)計算表示式2的值,如果其值為『真』則執行迴圈體語句,否則退出迴圈。執行for迴圈後的語句。
3)如果執行了迴圈體語句,則在每一次執行迴圈體結束時,都要計算一次表示式3的值,調整迴圈控制變數。爾後返回2)步重新計算表示式2的值,依此重複過程,直到表示式2的值為『假』時,退出迴圈。
for語句很好的體現了正確表達迴圈結構應注意的三個問題:迴圈控制變數的初始化、迴圈控制的條件以及迴圈控制變數的更新。
所以你上述表示式為死迴圈,因為沒有結束條件的約數。
2樓:匿名使用者
無限制條件,死迴圈。。。。
3樓:匿名使用者
表示式1;
while(1)
謝謝採納
不懂繼續
、對於for(表示式1;;表示式3)可以理解為________。
4樓:匿名使用者
明顯單從for語句來看。這個是一個死迴圈!如果for迴圈裡面有break則可以跳出迴圈防止死迴圈!
它的一般形式為:
for(《初始化》;《條件表示式》;《增量》)當條件表示式成立的時候進行迴圈,不成立則退出迴圈。
這一題答案是b。也就是無條件進行迴圈,一直到在迴圈語句裡面出現break語句為止才跳出迴圈!0表示非,1表示true!
5樓:匿名使用者
、對於for(表示式1;;表示式3)可以理解為________。
a、for(表示式1;0;表示式3)b、for(表示式1;1;表示式3)c、for(表示式1;表示式1;表示式3)d、for(表示式1;表示式3;表示式3)
6樓:匿名使用者
b沒有條件就是直接執行,不進行判斷,那麼就是要找到真值,1就表示「真」,0表示「假」,一般來說是非0表示「真」
7樓:星晴雨天
b沒有條件就是說無條件的執行下一步,1表示為「真」
8樓:芯系
b 非0即為1,程式會死迴圈知道遇到break。
急急急!c++。對for(表示式1;表示式3)可理解為for(表示式1;1;表示式3)。為什麼?
9樓:匿名使用者
可以,for表示式(1,2,3)1是在x執行前執行,2是限制條件,空則表示無限制條件,和數字1的意思一樣,數字1表示條件為真,即通過。3是在執行後執行。 但樓主表示有誤應該為:
for(1;;3)即使為空也不能省略分號
10樓:匿名使用者
1代表真,
第二個表示式的意思,表示式一必須滿足表示式才能進入迴圈體
對for(表示式1; ;表示式3)可以怎麼理解
11樓:
對表示式for(表示式1;;表示式3)可理解為for(表示式1;1;表示式3)。
若要保證for表示式能正常進行,首先要保證第2個表示式的條件判斷值應該為真,從而保證迴圈進行。
一直到在迴圈語句裡面出現break語句為止才跳出迴圈!0表示非,1表示true!沒有條件就是直接執行,不進行判斷,那麼就是要找到真值,1就表示「真」,0表示「假」,一般來說是非0表示「真」。
擴充套件資料
or迴圈和while的功能比較
一、迴圈的結構不同
for迴圈的表示式為:
for(單次表示式;條件表示式;末尾迴圈體)
while迴圈的表示式為:while(表示式)
二、執行條件的判斷方式不同
for迴圈執行末尾迴圈體後將再次進行條件判斷,若條件還成立,則繼續重複上述迴圈,當條件不成立時則跳出當下for迴圈。
while迴圈當滿足條件時進入迴圈,進入迴圈後,當條件不滿足時,執行完迴圈體內全部語句後再跳出,而不是立即跳出迴圈。
三、語法不同
for迴圈的語法為:for (變數 = 開始值;變數 <= 結束值;變數 = 變數 + 步進值) 。
while迴圈的語法為:while (《條件》) 。
12樓:指春秋
若要保證for表示式能正常進行,首先要保證第2個表示式的條件判斷值應該為真,從而保證迴圈進行。所以是for (表示式1;1;表示式3)
13樓:
我覺得理解為這樣挺好,相當於等價代換
表示式1
for(;;)
14樓:匿名使用者
只要迴圈體內沒有return、exit、break,這個就是無限迴圈了。因為缺少迴圈結束的條件表示式2。
15樓:哎呀沃去
for英 [fə(r); strong form fɔ:(r)]美 [fɚ; strong form fɔr]prep. 為,為了;因為;給;對於;至於;適合於conj. 因為
16樓:匿名使用者
中間的表示式是用來判斷是否跳出迴圈的。沒有表示永不跳出迴圈。一般這樣寫在迴圈內部也會有break的方法,否則就死迴圈了。
18.對表示式for( 表示式1; ; 表示式3)可以理解為( ) a.for(表示式1,0;表示式3) b.for(表示式1;1;表示式3
17樓:匿名使用者
迴圈表示式for( 表達
式1;表示式2 ; 表示式3)中可以省略表示式1;表示式2 ; 表示式3,也可以單個省略````但是分號不能省略.
表示式1一般是給迴圈控制條件賦初值,也可以是與迴圈無關的其他表示式....表示式1省略或與迴圈無關的其他表示式,則應在for迴圈之前給迴圈控制條件賦初值;如(注意分號)
int i=1;
for(;i<=100;i++);
表示式2是迴圈控制條件,如果省略迴圈將無止盡的進行下去;
表示式3一般改變迴圈控制條件的值,
注意這樣也是對的for(i=0 , j=10 ; i<=j ; i++ , j--)
祝你好運!
18樓:聚包盤
迴圈表示式for( 表示式1;表示式2 ; 表示式3)表示式1一般是給迴圈控制條
件賦初值,
表示式2是迴圈控制條件,一般迴圈控制條件判斷為「真」或「假」,若值為真則執行迴圈體語句,並接著計算表示式3,然後繼續迴圈,若值為假則退出迴圈,而根據條件判斷,值為「真」時可定義為1,值為「假」時為0,
表示式3為改變迴圈控制條件的表示式,。
for(表示式1; ;表示式3;)指的是for(表示式1;1;表示式3;) 啥意思?為啥?
19樓:莫路草根
可以根據實際例子進行解說:
for(i=0;i<100;i++)
上面這段**的意思是變數i從0開始每次累計+1進行往上迴圈,直到99.
所以再看看你提供的**,就可以很清楚的知道,()裡面有以分號隔開的三段**,1和3段的**是表示式,也就是具體的功能指示性**,中間的2段是條件。
算術表示式abcde轉為字尾表示式是?具體分析
轉為字尾表示式是 abcde a b c d e a b c d e 通過根據運算子的優先順序將所有算術單元括起來,該表示式變為 a b c d e 然後轉換字尾表示式。字尾 將操作符號移到相應的括號之後,然後變為 a b c de 除去括號後的表示式是字尾表示式 abcde 轉化後的字尾表示式為 ...
中綴表示式轉換成字尾表示式並求值
1 中綴表示式字尾演算法 遇到運算元,直接輸出。2 棧是空的,遇到操作符,直接推棧。3 當遇到開括號時,按下它,如下圖所示。4 當遇到右括號時,執行out操作並開始輸出out元素。直到彈出堆疊的元素是一個開括號。5 當遇到其他操作符時,彈出該操作符大於或等於堆疊頂部的所有優先順序元素,然後將該操作符...
關於逗號表示式的問題,C語言逗號表示式
x 4,y 11 第三行和第四行都是逗號表示式,但是有區別 第三行中x a 1是逗號表示式的第一個式子,b 6是第二個式子 所以x a 1 4 第四行中的a 1和b 6組成逗號表示式,逗號表示式的值付給y,所以b 6等於11付給y。我想可能是這樣 x 4,y 11 逗號好像是最低階的,那x a 1 ...