#define _CRT_SECURE_NO_WARNINGS 1
#include <math.h>
#include <stdio.h>
int is_narcissistic_number(int i ) {
int temp = i;
int n = 0;
//先判断一下是几位数
n = 0;
while (temp)
{
temp /= 10;
n += 1;
}
temp = i;
//拿到每一位
int sum = 0;
/*while (j=temp%10)
{
sum += pow(j, n);
temp /= 10;
}*/
while (temp)//%10 /10就可以拿到每一位
{
sum += pow(temp % 10, n);
temp /= 10;
}
if (sum == i) {
return 1;
}
else
{
return 0;
}
}
int main() {
int i = 0;
for (i = 0; i <= 100000; i++) {
if (is_narcissistic_number(i)) {
printf("%d\n", i);
}
}
return 0;
}
求0 -100000之间的”水鲜花数“ 一个n位数,这个数的每一位数的n次方相加等于这个n位数。例如153 = 3^3 +5^3 +1 ^3
最新推荐文章于 2024-07-15 15:17:48 发布