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);
}
相关推荐
SmoothSailingT38 分钟前
408每日一题——数据结构
数据结构·考研·408
MM_MS39 分钟前
Halcon控制语句
java·大数据·前端·数据库·人工智能·算法·视觉检测
mit6.8241 小时前
山脉二分找中值|子集型回溯
算法
清水白石0081 小时前
深入 Python 的底层世界:从 C 扩展到 ctypes 与 Cython 的本质差异全解析
c语言·python·neo4j
乃瞻衡宇1 小时前
Agent Skills 完全指南:让你的 AI Agent 拥有超能力
算法
mit6.8241 小时前
pair<int, TreeNode*> dfs
算法
进击中的小龙2 小时前
基于rtklib的载波相位平滑伪距
c语言·算法·数学建模·gitee
程序员zgh2 小时前
Linux 系统调用
linux·运维·服务器·c语言·c++·系统安全
初晴や2 小时前
【C++】图论:基础理论与实际应用深入解析
c++·算法·图论
李泽辉_2 小时前
深度学习算法学习(五):手动实现梯度计算、反向传播、优化器Adam
深度学习·学习·算法