用递归算法写程序,输入一个非负整数,输入这个数的倒序数
时间: 2024-10-14 17:06:54 浏览: 6
递归是一种解决问题的方法,其中函数调用自身来逐步缩小问题规模直到达到基本情况(也称作终止条件)。对于计算一个数字的倒序,我们可以利用递归来实现。这里有一个简单的C语言程序示例,它接受一个非负整数作为输入并返回其逆序:
```c
#include <stdio.h>
// 递归函数,接收一个整数n作为参数,返回它的倒序
int reverse(int n) {
// 基本情况:当n为0或1时,直接返回
if (n == 0 || n == 1)
return n;
// 将n的个位数添加到倒序结果的前面
return reverse(n / 10) * 10 + n % 10;
}
int main() {
int number;
printf("Enter a non-negative integer: ");
scanf("%d", &number);
// 检查输入是否有效
if (number < 0) {
printf("Invalid input, please enter a non-negative integer.\n");
return 1;
}
int reversed = reverse(number);
printf("The reversed number is: %d\n", reversed);
return 0;
}
```
当你运行这个程序,它会提示你输入一个非负整数,然后输出该整数的倒序。