问题描述:
代码实现:
#include<iostream>
using namespace std;
void shuchu(int i, int n) {
int temp;
cin >> temp;
if (i == n) { // 代表走到了最后一个数
cout << temp << " ";
} else {
shuchu(i + 1, n); // 先进行递归调用
cout << temp << " "; // 再输出当前数字
}
}
int main() {
int n;
cin >> n;
shuchu(1, n); // 从第一个数字开始递归
}
效果展示:
思路讲解:
我的核心思想是使用递归调用,传过去两个值,一个是i,另一个是n,每次都会输入数据,然后判断i和n是否相等,如果相等,代表到了输入这个数的最后位置,可以输出了,如果不满足,则代表是输入的中途位置,不满足输出条件。我们需要进行递归调用,继续输入数据。
好啦,希望能够帮助到大家!