#include<stdio.h>
void main()
{
int m,n,t,i,a,b,c;
while(scanf("%d%d",&m,&n)!=EOF)
if(m<=100&&m<=999&&n>=100&&n<=999)
{
if(n<m)
{
t=m;
m=n;
n=t;
}
for(i=m;i<=n;i++)
{ a=i/100;
b=i%100/10;
c=i%10;
if(i==a*a*a+b*b*b+c*c*c)
printf("%d",i);
}
if(i==n+1) printf("no\n");
}
}
第1个回答 2012-10-15
第一个if那里就错了啊,m>=100,你的是m<=100;
b是十位应该等于i%10/10吧。追问
b是十位应该等于i%10/10吧。追问
如果没有水仙花数 怎么判断啊
追答嗯?什么叫没有水仙花数怎么判断?
判断个十百位之类的么?
额,我也说错了
十位应该是i/10%10
第2个回答 2012-10-15
if(m<=100&&m<=999&&n>=100&&n<=999)
这数据处理 摆脱检查下 错了吧
这数据处理 摆脱检查下 错了吧
第3个回答 2012-10-16
if那错了吧
第4个回答 2012-10-15
m<=100&&m<=999&&n>=100&&n<=999 这个地方有问题吧