四叶玫瑰数是指四位数各位上的数字的四次方之和等于本身的数。编写函数,判断某个四位数是不是四叶玫瑰数,如果是则返回1,否则返回0。在主函数中调用此函数找出所有的四叶玫瑰数并输出。用C语言
时间: 2024-05-28 14:14:57 浏览: 116
C语言玫瑰花数
好的,我可以回答有关编程的问题。以下是你要求的 C 语言代码:
#include <stdio.h>
#include <math.h>
int isFourLeaf(int x) {
int sum = 0;
int digit;
int num = x;
while(num > 0) {
digit = num % 10;
sum += pow(digit, 4);
num /= 10;
}
if(sum == x) {
return 1;
} else {
return 0;
}
}
int main() {
int i;
for(i = 1000; i <= 9999; i++) {
if(isFourLeaf(i)) {
printf("%d\n", i);
}
}
return 0;
}
这个程序中,isFourLeaf 函数用于判断一个四位数是否满足四叶玫瑰数的条件。这个函数首先将四位数的各个数字的四次方之和计算出来,然后与这个四位数本身进行比较,如果相等就返回1,否则返回0。
在主函数中,我们使用一个for循环来遍历所有的四位数(从1000到9999),并对每个数调用isFourLeaf函数进行判断,如果是四叶玫瑰数就输出它。
阅读全文