#include<stdio.h>
int main()
{
int n,i,a,b,c,f=0;
scanf("%d", &n);
for (i = 100; i < n; i++)
{
a = i / 100;
b = i / 10 % 10;
c = i % 10;
if (a*a*a + b*b*b + c*c*c == i)
{
printf("%d\n",i);
f=1;
}
}
if (f==0)
printf("No Answer\n");
return 0;
}
将循环终止条件控制在小于n。
#include<stdio.h>
int main()
{
int i,j,k,n,num,count=0;
scan("%d",&num);
for(n=100;n<num;n++)
{
i=n/100; /*分解出百位*/
j=n/10%10; /*分解出十位*/
k=n%10; /*分解出个位*/
if(i*100+j*10+k==i*i*i+j*j*j+k*k*k)
{
count++;
printf("%d\n",n);
}
}
if(count==0){
printf("No Answer\n");
}
return 0;
}