there is a one question and answer, but i have no idea about it. i didnot understand anything. can you please explain this question step by step?
} 1/ 17.12 Friday Pointer's #include void print_array( int *first, int last ) while( first = source_first) * = *P; --; Q++; } int count_in_array( int *first, int last, int n{ int count = 0; int *p = last; while( p >= first ) if( *p == n ) count++; P--; } return count; } void array_copy_positivel int *dest, int *source, int size ) int *p = source, *q = dest; while p 0 X{ *q = *p; 9++; } p++; 1/4++; } int main() { int A[ 5 ] = { 5.-5.-5,33,8 }, BI 10 ] = { }, n = 5; print_array( A, A+ 4); print_array( B, B+ 9 ); array_copy_positive B, A, 5); print_array( A, A+ 4); print_array( B, B+ 9 ); array_copy! B, A, A+ 4); print_array( A, A+ 4); print_array( B, B+ 9 ); array_copy( B + 5, A, A+ 4); print_array( A, A+ 4); print_array( B, B+ 9 ); printf("%d appears d times in A and %d times in B. ", n, count_in_array( A, A + 4, n ), count_in_array( B, B + 9, n ) array_copy_reverse( B, A, A+ 4 ); print_array( A, A+ 4 ); print_array( B, B+ 9 ); 3