c語言while問題如圖,為什麼是100以內的偶數?

時間 2021-06-03 02:43:03

1樓:

i+2 和 i = i+2 有本質的區別

加號就像數學裡的函式 f(x, y) = x + y ,你計算 f(2,3) 的時候,2 不會變成 5,3 也不會變成 5。如果你希望儲存這個值,你就必須把它賦給另乙個值。比如 j = 2+3

問題並不是不是「左值」還是「右值」,而是「加法是純函式」。通俗一點講,加法不會改變它的引數的值,x + y 中,不論你怎麼做,x 和 y 的值都是固定不變的,程式會幫你計算出 x 和 y 的和,卻不會幫你把這個和存到 x 或者說 y 中。

本題中,i++ 相當於 i = i+1,所以整個程式裡,只有這個表示式有改變 i 的值的能力,也就是說,每次迴圈,i 都會遞增1:

i 是 1: i%2 是 1 不列印

i 是 2: i%2 是 0 列印 2

i 是 3: i%2 是 1 不列印

i 是 4: i%2 是 0 列印 4

i 是 5: i%2 是 1 不列印

……再做個比喻吧,有一堆蘋果,有 n = 56 個,問半堆蘋果有幾個,答案是 n / 2 = 28 個,但是你要注意,這堆蘋果的個數 n 是從來沒改變過的,不會因為你做了這次計算,蘋果就莫名其妙少了一半…

2樓:赫傲

printf列印的是結果,不是i。i是在遞增的,每一次迴圈加一。

第一次:不等於0,不輸出,i+1變為2

第二次:輸入2,餘數為0,輸出2(輸出的是輸入的球),然後i+1變成3

第三次:輸入3,餘數為1,不輸出,i變為4第四次:輸入4,餘數0,輸出4,i變為5

感覺你現在可能有點邏輯混亂了,死迴圈,鑽牛角尖了,打會兒遊戲吧,放鬆一下。

總結:我就是有點無聊,寫了這麼多,說白了,敲黑板,畫重點:printf在i++的前面

如圖,為什麼系統動量不守恆,機械能守恆

我有2個思路 第乙個思路是,受力分析。圖中你可以對整體受力分析,從而得到該整體在水平方向上受力平衡,所以在水平方向上,動量守恆。由於光滑弧面在豎直方向上沒有加速度,所以在豎直方向上合外力等於零。由於小球在豎直方向上有運動,且加速度不為零,所以在豎直方向上合外力不等於零。則系統在豎直方向上合外力不等於...

高中數學問題,如圖。為什麼例二不能用例一的方法來算?

木木sensei 其實一句話就可以說清楚 例1當中,底數2的a次方一定是乙個正數,所以開方不會有負號 例2當中,底數x可能是負數,所以開方的時候要考慮x是負數的情況。如果第一題換成x 2,那x就應該是正負根號2了。 小磚頭 特意找了一下必修一的電子課本 以下是高中數學對分數指數冪的規定。注意 根號前...

如圖,為什麼發動機中低轉速時缸內殘餘廢氣係數在中低負荷時會隨進氣提前角增大而增大,大負荷則相反呢?

Song Enos 看到了GT Power的圖示.提問者要麼是這方面的研究生博士要麼就是業內人士啊2333 看到問題的Tag裡面有渦輪增壓且Pin能加到1.8bar就猜一下是渦輪增壓發動機.能打到1.8bar看來還是個不小的渦輪啊.一般增壓係數越高的渦輪越不利於排氣,換言之Pout就會越來越高.尤其...