#include <stdio.h> void reverse_array(int *ptr, int n) { // Your logic here int* start = ptr; int* end = ptr + (n-1); // printf("ptr: %x\n", ptr); // printf("start: %x\n", start); // printf("end: %x\n", end); // printf("*ptr: %x\n", *ptr); // printf("*start: %x\n", *start); // printf("*end: %x\n", *end); while(start < end){ int tmp = *start; *start = *end; *end = tmp; start++; end--; } } int main() { int n; scanf("%d", &n); int arr[100]; for (int i = 0; i < n; i++) { scanf("%d", &arr[i]); } reverse_array(arr, n); for (int i = 0; i < n; i++) { printf("%d", arr[i]); if(i < n-1){ printf(" "); } } return 0; }
Test Cases
Test Results
Input
5 1 2 3 4 5
Expected Output
5 4 3 2 1