中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

c語言水仙花數問題怎么解決

小億
108
2023-12-07 17:49:44
欄目: 編程語言

水仙花數是指一個n位數,它的每個位上的數字的n次冪之和等于它本身。例如,153是一個水仙花數,因為1的3次方+5的3次方+3的3次方等于153。

要解決C語言的水仙花數問題,可以使用循環和條件判斷來判斷每個數是否是水仙花數。以下是一種解決方案:

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

int main() {
    int num, originalNum, remainder, n = 0, result = 0;
    
    printf("輸入一個正整數:");
    scanf("%d", &num);
    
    originalNum = num;
    
    // 計算輸入數字的位數
    while (originalNum != 0) {
        originalNum /= 10;
        ++n;
    }
    
    originalNum = num;
    
    // 檢查是否為水仙花數
    while (originalNum != 0) {
        remainder = originalNum % 10;
        result += pow(remainder, n);
        originalNum /= 10;
    }
    
    if (result == num)
        printf("%d 是水仙花數。\n", num);
    else
        printf("%d 不是水仙花數。\n", num);
    
    return 0;
}

這段代碼中,首先通過循環計算輸入數字的位數。然后使用循環和取余運算符來逐位計算數字的n次冪之和。最后,通過條件判斷來確定結果是否等于原始輸入數字,從而確定是否為水仙花數。

0
社旗县| 临沂市| 天峻县| 中卫市| 崇信县| 宁海县| 清河县| 泾阳县| 江门市| 关岭| 南雄市| 潜山县| 天津市| 鱼台县| 乐安县| 大英县| 四子王旗| 正定县| 东乌珠穆沁旗| 合川市| 三原县| 伊宁市| 安顺市| 南部县| 姜堰市| 西乌珠穆沁旗| 阿城市| 子长县| 南丰县| 吉木乃县| 绥江县| 兴和县| 平昌县| 麻阳| 海伦市| 雅安市| 类乌齐县| 平江县| 望谟县| 聂荣县| 鄂伦春自治旗|