亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

c語言水仙花數的求法是什么

小億
133
2024-01-08 10:21:45
欄目: 編程語言

C語言中求水仙花數的方法是利用循環和條件判斷進行計算。水仙花數是指一個n位數(n≥3),它的每個位上的數字的n次冪之和等于它本身。

具體的求法如下:

  1. 使用一個循環,從100開始逐個判斷每個數是否是水仙花數。
  2. 對于每個數,首先獲取該數的位數n。
  3. 將該數拆分為各個位上的數字,并計算每個數字的n次冪。
  4. 將各個數字的n次冪相加,得到一個和。
  5. 判斷該和是否等于原數,如果相等,則說明該數是水仙花數,可以輸出或保存起來。

示例代碼如下:

#include <stdio.h>
#include <math.h>

int main() {
    int n, num, digit, sum;
    
    printf("水仙花數有:");
    
    for (num = 100; num < 1000; num++) {
        n = 0;
        sum = 0;
        int temp = num;
        
        // 獲取位數n
        while (temp != 0) {
            temp /= 10;
            n++;
        }
        
        temp = num;
        
        // 分解并計算每個位上的數字的n次冪
        while (temp != 0) {
            digit = temp % 10;
            sum += pow(digit, n);
            temp /= 10;
        }
        
        // 判斷是否是水仙花數
        if (sum == num) {
            printf("%d ", num);
        }
    }
    
    return 0;
}

運行結果為:

水仙花數有:153 370 371 407

表示100到999之間的水仙花數為153、370、371和407。

0
中超| 雷波县| 无锡市| 北辰区| 右玉县| 无为县| 泗水县| 龙门县| 霸州市| 绥德县| 龙泉市| 马关县| 克什克腾旗| 平凉市| 古交市| 花垣县| 无极县| 固镇县| 宁陵县| 渝中区| 平顶山市| 博罗县| 邵阳市| 四子王旗| 五河县| 景东| 策勒县| 剑河县| 那曲县| 普定县| 拉萨市| 齐河县| 象山县| 天津市| 宝兴县| 炉霍县| 浙江省| 乌兰县| 十堰市| 临汾市| 思茅市|