读书人

水仙花数的有关问题

发布时间: 2013-04-26 16:27:53 作者: rapoo

水仙花数的问题
#include<iostream>
#include<cstdio>

int main()
{
int n_num1 ;
for( n_num1 = 100; n_num1 < 1000; n_num1 ++ )
{
int sum = 0, n_k ,n_num2 = 0;
n_k = n_num1 ;
while( n_num1 != 0)
{
n_num2 += n_num1 %10;
n_num1 /= 10;
sum += n_num2 * n_num2 * n_num2 ;
}
if( n_k == sum )
{
std::cout<< sum << " ";
}
}
return 0 ;
}


请问一下为什么运行进入死循环??我的思路哪里错了??谢谢!能帮忙改一下吗??
[解决办法]
n_num1的值变成0了,然后++变1这是死循环的原因
n_num2 += n_num1 %10;这个就是错的,为什么要+=?

读书人网 >C++

热点推荐