文章

36

粉丝

0

获赞

4

访问

10.1k

头像
水仙花数 题解:
P1034 中南大学机试题
发布于2024年3月10日 22:48
阅读数 313

#include <stdio.h>

int main() {
    int m, n;
    while (scanf("%d %d", &m, &n) != EOF) {
        if (m == 0 && n == 0) break;
        int flag = 0;
        for (int i = m; i <= n; i++) {
            int num = i;
            int sum = 0;
            int digit;
            while (num > 0) {
                digit = num % 10;
                sum += digit * digit * digit;
                num /= 10;
            }
            if (sum == i) {
                printf("%d ", i);
                flag = 1;
            }
        }
        if (flag == 0) printf("no\n");
        else printf("\n");
    }
    return 0;
}

 

登录查看完整内容


登录后发布评论

3 条评论
snake
2024年3月11日 08:37

第一个代码flag初始化的位置有问题

赞(0)

williams : 回复 snake: 哈哈哈好奇怪,昨天我试过我之后在while下面一行设定了flag=0,但是也还是不行,今天起床又试了一下可以了

2024年3月11日 08:46

snake : 回复 williams: 可以在提交记录里看到昨天的提交的代码,估计是细节问题

2024年3月11日 09:59