#include<stdio.h>
#include<math.h>
main()
{
int shuixian(int i);
int m,n,i,num;
while(scanf("%d%d",&m,&n)!=EOF&&m>=100&&m<=n&&n<=999)
{
num=0;
for(i=m;i<=n;i++)
{
if(shuixian(i))
{
num++;
if(num==1)
printf("%d",i);
else
printf(" %d",i);
}
}
if(num==0)
printf("no");
printf("\n");
}
}
int shuixian(int i)
{
int shuixian;
int g,s,b;
g=i%10;
b=i/100;
s=(i-b*100-g)/10;
if(g*g*g+b*b*b+s*s*s==i)
shuixian=1;
else
shuixian=0;
return(shuixian);
}
注意输出的格式!!!
这下面是搜到的另外一种,同样也是注意到了输出的格式
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
int main()
{
int m,n;
while(scanf("%d%d",&m,&n)!=EOF)
{
int c=0,t;
for(int i=m;i<=n;i++)
{
t=(i/100)*(i/100)*(i/100)+((i/10)%10)*((i/10)%10)*((i/10)%10)+(i%100%10)*(i%100%10)*(i%100%10);
if(t==i)
{
c++;
if(c==1)
printf("%d",i);
else
printf(" %d",i);
}
}
if(c==0) printf("no");
printf("\n");
}
//system("pause");
return 0;
}