c語(yǔ)言中怎么用遞歸法將數(shù)字逆序輸出

小億
203
2023-11-24 22:09:28

以下是一個(gè)用遞歸法將數(shù)字逆序輸出的示例代碼:

#include <stdio.h>

void reverseDigits(int num);

int main() {
    int num;
    printf("請(qǐng)輸入一個(gè)整數(shù):");
    scanf("%d", &num);
    printf("逆序輸出的結(jié)果為:");
    reverseDigits(num);
    printf("\n");
    return 0;
}

void reverseDigits(int num) {
    if (num < 10) {
        printf("%d", num);
    } else {
        printf("%d", num % 10);
        reverseDigits(num / 10);
    }
}

這個(gè)程序首先接收用戶輸入的整數(shù),然后調(diào)用 reverseDigits 函數(shù)來逆序輸出該整數(shù)的每一位數(shù)字。遞歸函數(shù) reverseDigits 的基本思想是,將給定的整數(shù)除以10得到最后一位數(shù)字,然后再遞歸調(diào)用 reverseDigits 函數(shù)以輸出剩余的位數(shù)。當(dāng)給定的整數(shù)小于10時(shí),直接輸出該數(shù)字即可。

請(qǐng)注意,這個(gè)程序假設(shè)輸入的整數(shù)為非負(fù)數(shù)。如果輸入的整數(shù)為負(fù)數(shù),可以在程序中添加相應(yīng)的處理邏輯。

0