#include"stdio.h"
main()
{int a,b,c,x,s=0,n;
scanf("%d",&n);
for(s=100;s<=n;s++)
{x=s;
a=s/100;
s=s%100;
b=s/10;
s=s%10;
c=s;
if(aaa+bbb+ccc==x)
printf("%d\n",x);
}
}
为什么这样打出来全是11111111111…麻烦解释一下

c语水仙花数for语句循环嵌套
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
4条回答 默认 最新
- CSDN专家-link 2022-03-31 19:50关注
因为你在循环代码里修改了循环变量s啊
你应该在循环中将s全部改为x,将x改为s#include"stdio.h" int main() {int a,b,c,x,s=0,n; scanf("%d",&n); for(s=100;s<=n;s++) {x=s; a=x/100; x=x%100; b=x/10; x=x%10; c=x; if(a*a*a+b*b*b+c*c*c==s) printf("%d\n",s); } }
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报 编辑记录