The free function is used to release memory allocated by the malloc function. You are not dynamically allocating the arrays, so you can't free them.
They arrays are fixed sizes; the same memory is reused each time through loop.
don't worry I have seen to many "value1"s to do it.
But array1, array2, and array 3 ore OK?