#include <iostream>
void move_negative_to_end(int arr[], int size) {
int j = 0;
for (int i = 0; i < size; i++) {
if (arr[i] >= 0) {
int tmp = arr[i];
arr[i] = arr[j];
arr[j] = tmp;
j++;
}
}
}
int main()
{
int arr[] = { -1, 8, -21, -3, -2, 7, 15, -30, -40, 4, 6, 9 };
int size = sizeof(arr)/sizeof(arr[0]);
move_negative_to_end(arr, size);
for (int i = 0; i < size; i++)
std::cout << arr[i] << " ";
return 0;
}
/*
run:
8 7 15 4 6 9 -21 -30 -40 -3 -2 -1
*/