#include <stdio.h>
#include <stdlib.h>
int main(void) {
int arr[] = {0,1,2,3,4,5,6,7};
size_t n = sizeof(arr) / sizeof(arr[0]);
// Middle index for even-sized arrays
size_t mid = n / 2;
// Left starts just before mid, right starts at mid
ssize_t left = mid - 1;
ssize_t right = mid;
// Iterate outward from the middle
while (left >= 0 || right < (ssize_t)n) {
if (right < (ssize_t)n) {
printf("%d ", arr[right]);
right++;
}
if (left >= 0) {
printf("%d ", arr[left]);
left--;
}
}
return 0;
}
/*
run:
4 3 5 2 6 1 7 0
*/