水仙花数
1) 要学会用更简洁得代码来实现,你可以看看底下得例子
2)编程要学会调试,不会调试就等于不会编程。调试就是单步检查关键变量得值看看对不对
3)你得逻辑中
g=m%10没问题
b=m/100没问题
s=m/10-b不等于十位数,你手工算一下就可以验证
正确得是s=m/10 - b*10;或者s=(m-b*100)/10
温馨提示:答案为网友推荐,仅供参考
第1个回答 2022-09-06
你的水仙花数的C语言程序我帮你改完了,你看看吧.
#include<stdio.h>
int main()
{
int i,m,n,g,s,b,a,t;
while(scanf("%d %d",&m,&n)!=EOF)
{
t=0;
i=m;
while(i<=n)
{
b=i/100;
s=i/10-b*10;
g=i%10;
a=g*g*g+s*s*s+b*b*b;
if(a==i){t++;printf("%d\n",i);}
i++;
}
if(t==0){printf("no\n");}
}
return 0;
}
本回答被网友采纳