输出仅为0和1。
int main()
{
int i, n=0, rem, sum=0, temp;
for(i=0; i<1000; i++) {
temp = n;
while(temp>0){
rem = temp%10;
sum += rem*rem*rem;
temp /= 10;
}
if (sum == i){
printf("%d ", i);
}
n++;
}
答案 0 :(得分:0)
对于每个值总和必须为零,这是第一次校正。我必须被分配给变量temp,因为如果它是非常强的数字,则必须检查i值。如果它将起作用的改变。
#include<stdio.h>
int main()
{
int i, rem, sum=0, temp;
for(i=0; i<1000; i++)
{
temp = i;
sum=0;
while(temp>0)
{
rem = temp%10;
sum += rem*rem*rem;
temp /= 10;
}
if (sum == i)
{
printf("\n%d ", i);
}
}
输出
0
1
153个
370个
371个
407