#include <stdio.h> #include <math.h>

int main() { int number, originalNumber, remainder, result = 0, n = 0;

printf("请输入一个三位数: ");
scanf("%d", &number);

originalNumber = number;

// 计算数字位数
while (originalNumber != 0) {
    originalNumber /= 10;
    ++n;
}

originalNumber = number;

// 计算每个数字的立方和
while (originalNumber != 0) {
    remainder = originalNumber % 10;
    result += pow(remainder, n);
    originalNumber /= 10;
}

// 如果是水仙花数,则输出结果
if (result == number)
    printf("%d 是水仙花数\n", number);
else
    printf("%d 不是水仙花数\n", number);

return 0;

}


原文地址: https://www.cveoy.top/t/topic/lTSW 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录