再帰を使用して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未満の場合は、その数字を直接出力すればよい。
このプログラムは、入力される整数が負でないことを前提としています。もし入力される整数が負であった場合、プログラム内で適切な処理ロジックを追加する必要があります。