openJudge | 数组逆序重放 C语言

文章目录

题目

总时间限制: 1000ms 内存限制: 65536kB

描述

将一个数组中的值按逆序重新存放。例如,原来的顺序为8,6,5,4,1。要求改为1,4,5,6,8。

输入

输入为两行:第一行数组中元素的个数n(1<n<100),第二行是n个整数,每两个整数之间用空格分隔。

输出

输出为一行:输出逆序后数组的整数,每两个整数之间用空格分隔。

样例输入

复制代码
5
8 6 5 4 1

样例输出

复制代码
1 4 5 6 8

思路

对于递归要注意三点:传入什么,输出(返回)什么及其先后顺序,还有限制递归的条件。

解题方法

由思路得

Code

c 复制代码
#include <stdio.h>
void f(int *m, int i, int n) {
    if(i < n) {
        f(m+1, i+1 ,n);
        printf("%d ", *m);
    }
}
int main() {
    int n, m[100];
    scanf("%d", &n);
    for(int i = 0; i < n ; i++) {
        scanf("%d", &m[i]);
    }
    f(m, 0, n);
}
相关推荐
Yzzz-F3 分钟前
2025 ICPC武汉邀请赛 G [根号分治 容斥原理+DP]
算法
abant28 分钟前
leetcode 114 二叉树变链表
算法·leetcode·链表
tankeven10 分钟前
HJ165 小红的优惠券
c++·算法
先积累问题,再逐次解决27 分钟前
快速幂优美算法
算法
XiYang-DING1 小时前
【LeetCode】 225.用队列实现栈
算法·leetcode·职场和发展
花月C1 小时前
线性动态规划(Linear DP)
算法·动态规划·代理模式
hetao17338372 小时前
2025-03-24~04-06 hetao1733837 的刷题记录
c++·算法
_深海凉_2 小时前
LeetCode热题100-环形链表
算法·leetcode·链表
原来是猿2 小时前
Linux进程信号详解(三):信号保存
开发语言·c++·算法