C Program to insert an element into an array

Problem Statement

Write a program in C to insert an element in to an array.

C Program to insert an element into an array 

#include <stdio.h> 
int main() 
{ 
    int  a[25]; 
    int  i, j, num, m, t, key, pos; 
  
    printf("Please enter number of elements\n"); 
    scanf("%d", &num); 
  
    printf("Enter the elements one by one\n"); 
    for(i=0; i<num; i++) 
    { 
         scanf("%d", &a[i]); 
    } 
  
    printf("Input array elements:\n"); 
    for(i=0; i<num; i++) 
    { 
         printf("%d\n", a[i]); 
    } 
  
    for(i=0; i< num; i++) 
    { 
         for(j=i+1; j<num; j++) 
         { 
               if (a[i] > a[j]) 
               { 
                      t = a[i]; 
                      a[i] = a[j]; 
                      a[j] = t; 
               } 
         } 
    } 
  
    printf("Sorted array elements (list):\n"); 
    for(i=0; i<num; i++) 
    { 
         printf("%d\n", a[i]); 
    } 
  
    printf("Enter the element to be inserted\n"); 
    scanf("%d",&key); 
  
    for(i=0; i<num; i++) 
    { 
         if ( key < a[i] ) 
        { 
               pos = i; 
               break; 
        } 
    } 
  
    m = num - pos + 1 ; 
  
    for(i=0; i<= m ; i++) 
    { 
           a[num-i+2] = a[num-i+1] ; 
    } 
  
    a[pos] = key; 
  
    printf("Array elements (list) after inserting:\n"); 
    for(i=0; i<num+1; i++) 
    { 
          printf("%d\n", a[i]); 
    } 
}