91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

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
南丰县| 齐河县| 巴彦县| 宁都县| 青阳县| 泰来县| 延边| 吉首市| 偃师市| 大化| 安阳县| 秦皇岛市| 潢川县| 会昌县| 贵定县| 潜山县| 昆明市| 麦盖提县| 偏关县| 桃源县| 惠水县| 大姚县| 改则县| 安远县| 德惠市| 清水河县| 永春县| 吴江市| 侯马市| 临城县| 丹阳市| 桐庐县| 阿克| 新丰县| 佳木斯市| 探索| 静宁县| 桃江县| 哈密市| 孟州市| 边坝县|