再帰を使用してC言語で数字を逆に表示する方法

以下に、再帰処理を使って数字を逆から出力するサンプルコードを示す。

#include <stdio.h>

void reverseDigits(int num);

int main() {
    int num;
    printf("请输入一个整数:");
    scanf("%d", &num);
    printf("逆序输出的结果为:");
    reverseDigits(num);
    printf("\n");
    return 0;
}

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

このプログラムではまずユーザーからの整数の入力を受け取り、reverseDigits関数を呼び出してその整数の各桁を逆順に出力する。再帰関数reverseDigitsの基本的な考え方は、与えられた整数を10で割って最後の桁を取得し、その後、reverseDigits関数を再帰的に呼び出して残りの桁を出力することである。与えられた整数が10未満の場合は、その数字を直接出力すればよい。

このプログラムは、入力される整数が負でないことを前提としています。もし入力される整数が負であった場合、プログラム内で適切な処理ロジックを追加する必要があります。

bannerAds