How To Insert An Element At a Specific Position in Array
In this tutorial, we are going to see how to insert an element at a specific position in an array in C programming. Note: This does not mean that we want to increase the size of the array.
For example, let’s consider the following array arr[10] with four elements:
arr[0] = 10 arr[1] = 20 arr[2] = 30 arr[3] = 40
And suppose you want to insert the value 5 at the first position of the array. i.e. arr[0] = 5, so we need to move the elements by one cell so that after the insertion:
arr[0] = 5 arr[1] = 10 arr[2] = 20 arr[3] = 30 arr[4] = 40
How To Insert An Element At a Specific Position in Array
#include <stdio.h>
int main()
{
int position, i, nbr, val;
int arr[100];
printf(" Enter the number of elements in the array: ");
scanf("%d", &nbr);
printf(" Enter the %d elements: ", nbr);
for (i = 0; i < nbr; i++)
scanf("%d", &arr[i]);
printf(" Enter the position where you want to insert the element: ");
scanf("%d", &position);
printf(" Enter value to be inserted: ");
scanf("%d", &val);
for (i = nbr - 1; i >= position - 1; i--)
arr[i+1] = arr[i];
arr[position-1] = val;
printf(" After inserting: ");
for (i = 0; i <= nbr; i++)
printf("%4d", arr[i]);
return 0;
}
Output:
Enter the number of elements in the array: 4 Enter the 4 elements: 1 2 3 4 Enter the position where you want to insert the element: 1 Enter value to be inserted: 9 After inserting: 9 1 2 3 4




