C程序:任何人都可以解释这个程序吗? [循环变量概念]

时间:2014-02-27 15:04:15

标签: c loops for-loop

任何人都可以给我一个正确的解释下面的代码吗?

#include<stdio.h>

int main()
{
    int n = 1729;
    int s;
    for(s=0;n;s+=n%10)
        n/=10;
    printf("s:%d\n",s);
    return 0;
}

输出为“s:10”

1 个答案:

答案 0 :(得分:2)

除了最后一个之外,它对n的数字求和。 在你的情况下,s = 10 = 1 + 7 + 2

你可以看到在第一次迭代中我们除以10并除去数字9.所以n = 172。 然后我们继续将第一个右边的数字添加到s,直到n为零(我们完成扫描数字)