测评会员优惠活动进行中 · 开通 VIP,有效期内测评不限次 VIP 优惠中 · 测评不限次 立即查看

A36092. 数组指定部分逆序重放

填空题 较易

题目描述

数组指定部分逆序重放

题目描述

将一个数组中的前k项按逆序重新存放。

例如,将数组8,6,5,4,1前3项逆序重放得到5,6,8,4,1。

输入

输入为两行:

第一行两个整数,以空格分隔,分别为数组元素的个数n(1 < n < 100)以及指定的k(1 <= k <= n)。

第二行是n个整数,每两个整数之间用空格分隔。

输出

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

样例输入

5 3

8 6 5 4 1

样例输出

5 6 8 4 1

参考答案

#include <stdio.h> void reverseArray(int arr[], int start, int end) { while (start < end) { int temp = arr[start]; arr[start] = arr[end]; arr[end] = temp; start++; end--; } } int main() { int n, k; scanf("%d %d", &n, &k); int arr[n]; for (int i = 0; i < n; i++) { scanf("%d", &arr[i]); } reverseArray(arr, 0, k - 1); for (int i = 0; i < n; i++) { printf("%d ", arr[i]); } printf("\n"); return 0; }
上一题 下一题