设计一个程序打印出所有水仙花数 c语言
时间: 2023-07-15 17:12:29 浏览: 143
c语言程序设计:水仙花,输出1800~2010间所有的闰年等
水仙花数是指一个 n 位正整数 (n≥3),它的每个位上的数字的 n 次幂之和等于它本身。
例如:1^3 + 5^3 + 3^3 = 153,因此 153 就是一个水仙花数。
以下是一个 C 语言程序,用于打印出所有的三位数水仙花数:
```c
#include <stdio.h>
#include <math.h>
int main()
{
int i, num, digit, sum;
printf("All three-digit Narcissistic numbers are:\n");
for (i = 100; i <= 999; i++)
{
num = i;
sum = 0;
while (num > 0)
{
digit = num % 10;
sum += pow(digit, 3);
num /= 10;
}
if (sum == i)
{
printf("%d\n", i);
}
}
return 0;
}
```
该程序通过循环遍历所有三位数,对每个数进行水仙花数判断,并输出结果。其中,pow() 函数用于计算数字的 n 次幂。
阅读全文