here is question:
Write a function that accepts an array of integers and its size as arguments. The function should create a new array that is one element larger than the argument array. The first element of the new array should be set to 0. Element 0 of the argument array should be copied to element 1 of the new array, element 1 of the argument array should be copied to element 2 of the new array, and so forth. The function should return a pointer to the new array.
here is what i got so far. I am so confuse right now!
#include<iostream>
using namespace std;
int *Shifted_array(const int *arr,int size)
{
int *New_array=new int[size+1];
int i,m;
New_array[0] = 0;
m=1;
for(i=0;i<size;i++)
{
New_array[m] = arr[i];
m++;
}
return New_array;
}
int main ()
{
int array[30];
int *Shifted;
int size;
int i;
cout << "Enter size of array: " << endl;
cin >> size;
cout << "Enter elements: ";
for(i=0;i<size;i++)
cin >> array[i];
Shifted=Shifted_array(array,size);
cout << "The elements after shifting the array: " << endl;
for(i=0;i<size+1;i++)
cout << *(Shifted+i) << endl;
}