Code:


#include <conio.h>
#include <stdio.h>

void NhapMang(int A[], int &n)
{
   printf("Nhap n = ");
   scanf("%d",&n);
   for(int i = 0; i<n ; i++)
   {
      printf("Phan tu %d =",i);
      scanf("%d", &A[i]);
   }
}
void XuatMang(int A[], int n, int j)
{
   printf("\n");
   for(int i = 0; i<n ; i++)
   if(i<=j)
      printf("%d\t",A[i]);
   else
      printf("\t");


}
void HoanVi(int &a, int &b)
{
   int temp = a;
   a = b;
   b = temp;
}
void InsertionSort(int A[], int n)
{
   for(int i = 0; i<n-1; i++)
   {
      for(int j = i+1; j>0; j--)
      if(A[j] < A[j-1])
            HoanVi(A[j],A[j-1]);
      XuatMang(A,n,i+1);
   }
}
void main()
{
   clrscr();
   int C[100], n;
   NhapMang(C,n);
   printf("\nMang chua sap xep\n");
   XuatMang(C,n,n);
   printf("\nMang duoc sap xep la\n");
   InsertionSort(C,n);
   getch();
}