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;
}
上一题
下一题