关于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的初始化位置不对。
[解决办法]
#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;}