溫馨提示×

C語言怎么用while語句求水仙花數(shù)

小億
369
2023-12-05 15:30:12
欄目: 編程語言

水仙花數(shù)是指一個三位數(shù),其各個位上數(shù)字立方和等于該數(shù)本身。例如,153就是一個水仙花數(shù),因為1^3 + 5^3 + 3^3 = 153。

以下是使用while語句來求解水仙花數(shù)的示例代碼:

#include <stdio.h>

int main() {
    int num, originalNum, remainder, result = 0;

    printf("請輸入一個三位數(shù): ");
    scanf("%d", &num);

    originalNum = num;

    while (originalNum != 0) {
        remainder = originalNum % 10;
        result += remainder * remainder * remainder;
        originalNum /= 10;
    }

    if (result == num)
        printf("%d 是水仙花數(shù)。\n", num);
    else
        printf("%d 不是水仙花數(shù)。\n", num);

    return 0;
}

該代碼首先要求用戶輸入一個三位數(shù),然后使用原始數(shù)的副本進(jìn)行操作。在while循環(huán)中,我們通過對原始數(shù)進(jìn)行取余操作,得到每個位上的數(shù)字,并將其立方求和,存儲在result變量中。然后,我們將原始數(shù)除以10,以便在下一次循環(huán)中處理下一個數(shù)字。最后,我們將計算出的result與原始數(shù)進(jìn)行比較,如果相等,則該數(shù)是水仙花數(shù),否則不是。

0