代码展示如下:
#include<stdio.h>
int main()
{
int m,n,i,a,b,c,sum=0,s;
while(scanf("%d%d",&m,&n)!= EOF)
{
s=0;
for(i=m;i<=n;i++){
a=i/100;
b=(i-a*100)/10;
c=i-a*100-b*10;
sum=a*a*a+b*b*b+c*c*c;
if(sum==i)
{
s++;
//此处主要是将第一个输出单独拿出来,后面的每一输出由空格和值组成即可。
if(s==1)printf("%d",i);
else printf(" %d",i);
}
}
if(s==0)
{
printf("no");
}
printf("\n");
}
return 0;
}
水仙花数想必大家也不陌生,解题的思想很简单,主要是在于大家对一些细节的把握。本题主要是在于对输出数值用空格隔开的处理,末尾不能有空格。