HUELOJ: 110 多个整数的逆序输出(函数专题)

题目描述
输入 n 和 n 个整数,以与输入顺序相反的顺序输出这 n 个整数。要求不使用数组,而使用递归函数实现。
递归函数实现过程如下:
void inverse(int n)
{
if(n >1)
{
(1) 读入一个整数,存入 num;
(2) 将后面的 n-1 个数逆序输出: inverse(n-1);
(3) 输出 num;
}
if( n == 1) 直接输出 num;
}

输入描述
输入有两行,第一行是一个正整数 n,第二行有 n 个整数,整数之间由空格隔开。
输出描述
输出 n 个整数,顺序与输入顺序相反,每个整数后有一个空格。
输入样例

5
11 22 33 44 55

输出样例

55 44 33 22 11

代码

#include
void inverse(int n);
int main()
{
    int n,num;
    scanf("%d",&n);
    inverse(n);
    return 0;
}
void inverse(int n)
{
    int num;
    if(n > 1)
    {
        scanf("%d",&num);
        inverse(n - 1);
        printf("%d ",num);
    }
    else if(n == 1)
    {
        scanf("%d",&num);
        printf("%d ",num);
    }
}

你可能感兴趣的:(HUEL-OJ,算法,c语言)