Sorting an integer array in C

By: Ignatius Printer Friendly Format    


This simple C program sorts the elements of an integer array and prints them.

#include <stdio.h>
#define  SIZE   10
 
int main()
{
       int a[SIZE] = {34,6,41,58,0,12,89,-2,45,25};
       int i, pass, hold;
       printf("Data items in original order\n\n");
       // displaying the original array...
       for(i=0; i<=SIZE - 1; i++)
              printf("%d  ", a[i]);
       // ------do the sorting...ascending-------------
       // for every array elements do this...
       for(pass = 1; pass <= (SIZE-1); pass++)
            // for every 2 array elements comparison do
            // the comparison and swap...
            for(i = 0; i <= (SIZE-2); i++)
              // set the condition...
              if(a[i] > a[i + 1])
              {
                     // put the a[i] in temporary variable hold...
                     hold = a[i];
                     // put the a[i + 1] in a[i]
                     a[i] = a[i + 1];
                     // put the hold in a[i + 1], one swapping is
                     // completed...and repeat for other elements...
                     a[i + 1] = hold;
              }
       printf("\n\nData items in ascending order\n\n");
       // display the new ordered list...
       for (i=0; i <= (SIZE-1); i++)
            printf("%4d", a[i]);
       printf("\n\n");
       return 0;
}



Ask a Question



Most Viewed Articles (in C )

Latest Articles (in C)

Comment on this tutorial