云主机测评网云主机测评网云主机测评网

云主机测评网
www.yunzhuji.net

用c语言怎么求水仙花数

水仙花数是指一个n位数,它的每个位上的数字的n次幂之和等于它本身,153是一个水仙花数,因为1^3 + 5^3 + 3^3 = 153。

(图片来源网络,侵删)

以下是用C语言求水仙花数的方法:

1、我们需要确定要查找的水仙花数的范围,我们可以选择查找3位数的水仙花数。

2、我们需要遍历这个范围内的所有数字,对于每一个数字,我们需要计算它的每一位上的数字的立方和。

3、我们需要判断这个立方和是否等于原来的数字,如果相等,那么这个数字就是水仙花数。

以下是具体的C语言代码:

#include <stdio.h>
#include <math.h>
int main() {
    int i, n, temp, sum, digit;
    // 设置查找范围为3位数
    for (i = 100; i <= 999; i++) {
        temp = i;
        sum = 0;
        // 计算每一位上的数字的立方和
        while (temp != 0) {
            digit = temp % 10;
            sum += pow(digit, 3);
            temp /= 10;
        }
        // 判断立方和是否等于原来的数字
        if (sum == i) {
            printf("%d 是水仙花数
", i);
        }
    }
    return 0;
}

这段代码会打印出所有的3位数水仙花数,如果你想查找其他位数的水仙花数,只需要修改循环的范围即可。

打赏
版权声明:主机测评不销售、不代购、不提供任何支持,仅分享信息/测评(有时效性),自行辨别,请遵纪守法文明上网。
文章名称:《用c语言怎么求水仙花数》
文章链接:https://www.yunzhuji.net/jishujiaocheng/147722.html

评论

  • 验证码