题解 | #水仙花数#

水仙花数

https://www.nowcoder.com/practice/dc943274e8254a9eb074298fb2084703

#include <stdio.h>

int main() {
    int a, b;
    while (scanf("%d %d", &a, &b) != EOF) { // 注意 while 处理多个 case
        int count = 0;
        for (int i = a; i <= b; i++) {
            int tmp = i; int sum = 0;
            while (tmp != 0) { //a==0说明上一个循环的a已经是个位数了
                int yuShu = tmp % 10;
                sum = sum + yuShu * yuShu * yuShu;
                tmp = tmp / 10;//把商赋值给a,再循环
            }
            if(sum == i) {
                printf("%d ", sum);
                count++;
            }            
        }
        if(count == 0) printf("no");
        printf("\n");//最后换行,这个可能是有输出水仙花数,也可能是输出no之后的换行
    }
    return 0;
}

全部评论

相关推荐

点赞 评论 收藏
转发
点赞 收藏 评论
分享
牛客网
牛客企业服务