关于c语言中一个水仙数的有关问题 在vc++6.0编译链接都没错 就是没有结果 求解

关于c语言中一个水仙数的问题 在vc++6.0编译链接都没错 就是没有结果 求解
#include <stdio.h>
int main(void)
{
int m, n = 0, k, sum;
for (k = 100; k < 1000; ++k)
{m = k;
do

sum = m % 10;
n = n + sum * sum * sum;
m = m / 10;
} while (m);
if( k == n)
printf("%d\n", k );
}
return 0;
}

------解决方案--------------------
需要每次使用n之前对n进行初始化。
------解决方案--------------------
这个问题我刚刚解决,n的初始化位置不对。
------解决方案--------------------
C/C++ code

#include <stdio.h>
int main(void)
{
    int m, n = 0, k, sum;
    for (k = 100; k < 1000; ++k)
    {
        m = k;
        do
        {  
            sum = m % 10;
            n = n + sum * sum * sum;
            m = m / 10;
        } 
        while (m);
        if( k == n)
        printf("%d\n", k );
        n=0; //在这里把n重新初始化就好啦
    }
    return 0;
}