當前位置:係統粉 > 電腦問答 > 其他問答 > c++程序執行問題

c++程序執行問題

提問者:水貼大王子  |  瀏覽 次  |  提問時間:2017-03-18  |  回答數量:3

c++程序執行問題請問為什麼這段代碼輸出的結果是10?循環結構是怎樣執行的? #include<iostream.h> int main() {         int s;         for(int k=2;k<6;k+=2){                 s=1;                 for(int j=k;j<6;j++)s+=j;         }         cout<<s<<endl;         return 0; }

已有3條答案
讓愛化作阿富汗

讓愛化作阿富汗

回答數:64  |  被采納數:73

2017-03-18 03:38:18
外層循環會執行兩次,但是起作用的隻有第二次,因為你裏麵寫死了s=1,所以無論外層循環執行多少次,真正k的值起作用的也隻有最後一次。

由於外層循環k每次加2,所以很明顯最後一次是k=4時,進去,執行順序s=1 ,j=k=4 j<6 進裏層循環, 第一次s=s+j=1+4=5j++後等於5 依舊 <6 繼續第二次進去s=s+j=5+5=10 j++ 後等於6跳出循環,再跳出外層循環。

那不就隻能是10

PS:這神馬爛程序,沒一點意義。
讚 6
1大漠神鷹1

1大漠神鷹1

回答數:146  |  被采納數:104

2017-03-18 06:22:34

謝謝,解釋得很詳細。版主,我還是一個剛開始學的菜鳥,體諒下吧。
讚 14
天魁慕瀾

天魁慕瀾

回答數:183  |  被采納數:28

2017-03-18 04:16:05

額,你自己寫的啊,我還以為是拿不知道哪裏弄過來的例子來問的呢,抱歉抱歉,主要是這樣的循環看的是在是。。。。。。。 無心之說,不要介意。
讚 18
解決方法
版權信息

Copyright @ 2011 係統粉 版權聲明 最新發布內容 網站導航