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);
}
相关推荐
地平线开发者3 分钟前
征程 6 灰度图部署链路介绍
人工智能·算法·自动驾驶·汽车
你怎么知道我是队长17 分钟前
C语言---存储类
c语言·开发语言
靠近彗星1 小时前
2.3单链表
数据结构
徐子童2 小时前
优选算法---链表
数据结构·算法·链表·面试题
如意.7592 小时前
从零开始的指针(3)
算法
CYH&JK2 小时前
数据结构---链式队列
数据结构
cwplh2 小时前
MX模拟赛总结
算法·动态规划
浅川.253 小时前
xtuoj 随机数
算法
shan&cen3 小时前
Day02 集合 | 30. 串联所有单词的子串、146. LRU 缓存、811. 子域名访问计数
java·数据结构·算法·缓存