水仙花数,也被称为阿姆斯特朗数,是指一个 n 位数 (n≥3),它的每个位上的数字的 n 次幂之和等于它本身。例如,153 是一个水仙花数,因为 1^3 + 5^3 + 3^3 = 153。
代码:
/* 计算100 - 999 之间的水仙花数 */#include <stdio.h>
#include <math.h>int main() {int start = 100; // 起始数值int end = 999; // 结束数值for (int num = start; num <= end; num++) {int sum = 0;int temp = num;while (temp > 0) {int digit = temp % 10;sum += pow(digit, 3);temp /= 10;}if (num == sum) {printf("%d\n", num);}}return 0;
}