c语言输入m,n 输出m到n之间的水仙花数 我错哪里啊

#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吧。追问

如果没有水仙花数 怎么判断啊

追答

嗯?什么叫没有水仙花数怎么判断?
判断个十百位之类的么?

额,我也说错了
十位应该是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  这个地方有问题吧

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网