【问题描述】倒序输出一个正整数的递归程序 【输入形式】正整数 【输出形式】该正整数的倒序 【样例输入】5476 【样例输出】6745,用C++实现,保证输出最高位不为0
时间: 2024-10-29 17:23:44 浏览: 9
编写程序输出前n个正整数的字典序全排列
5星 · 资源好评率100%
为了编写一个递归程序来倒序输出一个正整数,我们可以使用C++中的函数。这里是一个简单的示例,用于计算并返回给定数字的逆序:
```cpp
#include <iostream>
using namespace std;
// 定义一个递归函数reverseNumber
int reverseNumber(int num) {
// 基线条件:如果num为0或1,直接返回num
if (num == 0 || num == 1)
return num;
// 递归条件:取出num的最后一位,然后把剩余部分倒序
int lastDigit = num % 10; // 取出最后一位
int remaining = num / 10; // 去除最后一位后的部分
return lastDigit + reverseNumber(remaining * 10); // 返回剩余部分加上最后一位的逆序
}
int main() {
int inputNum = 5476;
int reversedNum = reverseNumber(inputNum);
cout << "倒序后的数字是:" << reversedNum << endl; // 输出结果
return 0;
}
```
在这个例子中,`reverseNumber`函数会不断从输入的整数中提取最后一个数字,并将剩下的部分继续传递给自身,直到只剩下一位为止。最后,逐层添加这些数字就得到了原数的逆序。
阅读全文