Answer:
Here is the SwapArrayEnds()
//function with two parameters; the array and array size
void SwapArrayEnds(int sortArray[],int SORT_ARR_SIZE){
int temp; //temporary variable to hold the first element of sortArray
if(SORT_ARR_SIZE > 1){ //if sortArray size is greater than 1
temp = sortArray[0]; // set value of temp to the first element of sortArrray
sortArray[0] = sortArray[SORT_ARR_SIZE-1]; // set the value of first element of sortArray to the last element of sortArray
sortArray[SORT_ARR_SIZE-1] = temp; } } // set last element value to temp
Explanation:
Lets understand the working of the above function with the help of an example. Suppose the sortArray has the following elements: {10,20,30,40}. So the size of this array is 4.
if(SORT_ARR_SIZE > 1) has an if statement which checks if the array size is greater than 1. This condition evaluates to true as 4 > 1. So the body of if condition executes.
Next the statement temp = sortArray[0]; sets the value of temp variable to the value of first element of sortArray. As sortArray[0] means the element at 0-th index position of the sortArray. So using the above example the first element of the array is 10. So temp = 10.
Next the statement sortArray[0] = sortArray[SORT_ARR_SIZE-1]; sets the last element of the sortArray to the position of first element of the sortArray.
SORT_ARR_SIZE-1 is the position of last element of the array. As the size of sortArray is 4, so 4-1 = 3 which points to the last element. Now this element is moved to the first position of the array. This means that the value of first element of array becomes 40 as the element at 3-th index of the sortArray is 40.
Next the statement sortArray[SORT_ARR_SIZE-1] = temp moves the value in temp variable to the last position of the sortArray. As we know that the value of temp= 10. So this element 10 of the sortArray is positioned at SORT_ARR_SIZE-1 position of sortArray which is 4-1 = 3-th index of sortArray. This simply means that 10 is moved to the last position of sortArray.
So now the final sortArray becomes: 40,20,30,10 as the first and last element of the array are swapped using above function SwapArrayEnds().
The program along with the output is attached in screenshot.