回 帖 发 新 帖 刷新版面

主题:[讨论]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;
}

回复列表 (共2个回复)

沙发

第一次:[color=0000FF]k=2;s=1;
        j=k=2;s=s+j=3;
        j++;j=3;s=6;
        j++;j=4;s=10;
        j++;j=5;s=15;
        j++;j=6;[/color]跳出循环;
第二次:[color=FF0000]k = k+2;k = 4;s = 1;
        j=k=4;s=s+j=5;
        j++;j=5;s=10;
        j++;j=6;[/color]整个循环结束;
        故s=10;

板凳

谢谢,非常感谢,解释很详细。

我来回复

您尚未登录,请登录后再回复。点此登录或注册