Program to maintain a heap.
#include #include void restoreup ( int, int * ) ; void restoredown ( int, int *, int ) ; void makeheap ( int *, int ) ; void add ( int, int *, int * ) ; int replace ( int, int *, int ) ; int del ( int *, int * ) ; void main( ) {  int arr [20] = { 1000, 7, 10, 25, 17, 23, 27, 16,      19, 37, 42, 4, 33, 1, 5, 11 } ;  int i, n = 15 ;  clrscr( ) ;  makeheap ( arr, n ) ;  printf ( "Heap:\n" ) ;  for ( i = 1 ; i   printf ( "%d\t", arr [i] ) ;  i = 24 ;  add ( i, arr, &n ) ;  printf ( "\n\nElement added %d.\n", i ) ;  printf ( "\nHeap after addition of an element:\n" ) ;  for ( i = 1 ; i   printf ( "%d\t", arr [i] ) ;  i = replace ( 2, arr, n ) ;  printf ( "\n\nElement replaced %d.\n", i ) ;  printf ( "\nHeap after replacement of an element:\n" ) ;  for ( i = 1 ; i   printf ( "%d\t", arr [i] ) ;  i = del ( arr, &n ) ;  printf ( "\n\nElement deleted %d.\n", i ) ;  printf ( "\nHeap after dele...