用递归算法写程序,输入一个非负整数,输出这个数的倒序数
输入说明
一个非负整数
输出说明
倒序结果
输入示例
123
输出示例
321
代码加结果运行图
用递归算法写程序,输入一个非负整数,输出这个数的倒序数
输入说明
一个非负整数
输出说明
倒序结果
输入示例
123
输出示例
321
代码加结果运行图
以下回复参考:皆我百晓生、券券喵儿等免费微信小程序作答:
以下是一个使用递归算法实现的C++程序,可以输入一个非负整数并输出其倒序数:
#include <iostream>
using namespace std;
int reverseNumber(int n) {
if (n < 10) { // 如果输入的数字只有一个数字,直接返回该数字
return n;
} else { // 如果输入的数字有多位,则递归调用函数,将数字除以 10 并取余数得到最后一位数字,然后将剩余部分进行倒序处理并拼接在最后一位数字后面
int lastDigit = n % 10; // 获取最后一位数字
int remaining = n / 10; // 获取剩余部分数字
return lastDigit * 10 + reverseNumber(remaining); // 将最后一位数字乘以 10 并加上剩余部分的倒序结果,得到整个数字的倒序结果
}
}
int main() {
int n;
cout << "请输入一个非负整数:";
cin >> n;
cout << "倒序结果为:" << reverseNumber(n) << endl; // 输出倒序结果
return 0;
}
程序中的 reverseNumber() 函数实现了递归算法来倒序一个非负整数。当输入的数字只有一个数字时,直接返回该数字;否则,递归调用函数将数字除以 10 并取余数得到最后一位数字,然后将剩余部分进行倒序处理并拼接在最后一位数字后面,直到输入的数字被完全处理完为止。最后,在 main() 函数中读取输入的非负整数并调用 reverseNumber() 函数输出倒序结果。