C语言中的水仙花问题

img


运行的起来,但是却没有结果,不知道是怎么回事,求解,在100到1千的范围之内

明明就是3位数,为啥要去计算count呢?问题还就出在这个count上。如果你非得计算count,那么应该在for循环开始时,将count设置为0.
另外sum也是一样,它count都是对每一个n判断是否为水仙花数时,需要恢复为0重新开始计算的。你不设置为0,那么就一直会累加,当然后面的数都是错误的

pow()函数缺少头文件#include <math.h>,另外在100到1000范围内可以省略count那步for循环,直接赋值为3,这样代码更简洁

因为你的count在循环里没有清零,它除了计算100的时候是3,101变成6,102变成9,你每个数字取那么多次方,加起来能相等才怪