1. Write the following functions, and then write a program that tests them. Your code should use C’s binary file random access functions to perform the required tasks. A sample binary file of random integers is available to you (lab10BinFile.dat), and a corresponding text file is provided so that you will be able to check your work.
Note: The functions should assume that all file ptrs point to files that are already open in the appropriate mode (input and/or output) for the function’s task.
a. A function that prints all items from a binary file of integers. Use the following prototype:
void print_bin_file(FILE *fileptr);
b. A function that returns the number of integers in a binary file of integers. Use file positioning functions, and do not read any of the integers. The function should take a pointer to the file as its argument. Use the following prototype:
int count_elements (FILE *fptr);
c. A function that returns the last integer in a binary file of integers. Use no more than one read statement, which should read only the integer in question. The function should take a pointer to the file as its argument. Use the following prototype:
int get_last(FILE *fptr);
d. A function that returns the nth integer in a binary file of integers. In main, prompt the user to enter n, and ensure that n is between 1 and the number of integers in the file before calling the function.
int get_nth(FILE *fptr, int n);
e. A function that copies one binary file of integers to a second file. The function should take pointers to the source and destination files as its arguments.
void copy_file(FILE *source_ptr, FILE *target_ptr);