Bubble Sort Data Structure Example in C - Program to arrange elements in Ascending, Descending Order.

Bubble Sort is a simple method to sort list, in this sorting technique we compare adjacent elements and swap if they are in a wrong order. This process repeats until no more swaps are needed.

C program for Data Structure Bubble Sort Example - In this program we will read N number of elements in a One Dimensional Array and arrange all elements in Ascending and Descending Order using Data Structure Bubble Sort technique.

Data Structure - Bubble Sort Example using C program


/*Bubble Sort - C program to sort an Array 
in Ascending and Descending Order.*/

#include <stdio.h>

#define MAX 100

int main()
{
    int arr[MAX],limit;
    int i,j,temp;
    
    printf("Enter total number of elements: ");
    scanf("%d",&limit);
    
    /*Read array*/
    printf("Enter array elements: \n");
    for(i=0; i<limit; i++)
    {
        printf("Enter element %3d: ",i+1);
        scanf("%d",&arr[i]);
    }
    
    /*sort elements in Ascending Order*/
    for(i=0; i<(limit-1); i++)
    {
        for(j=0; j<(limit-i-1); j++)
        {
            if(arr[j]>arr[j+1])
            {
                temp=arr[j];
                arr[j]=arr[j+1];
                arr[j+1]=temp;
            }
        }
    }

    printf("Array elements in Ascending Order:\n");
    for(i=0; i<limit; i++)
        printf("%d ",arr[i]);
	
	printf("\n");
        
    /*sort elements in Descending Order*/
    for(i=0; i<(limit-1); i++)
    {
        for(j=0; j<(limit-i-1); j++)
        {
            if(arr[j]<arr[j+1])
            {
                temp=arr[j];
                arr[j]=arr[j+1];
                arr[j+1]=temp;
            }
        }
    }

    printf("Array elements in Descending Order:\n");
    for(i=0; i<limit; i++)
        printf("%d ",arr[i]);
	
	printf("\n");
	
    return 0;
}

    Enter total number of elements: 10
    Enter array elements:
    Enter element 1: 12
    Enter element 2: 34
    Enter element 3: 43
    Enter element 4: 32
    Enter element 5: 21
    Enter element 6: 1
    Enter element 7: 11
    Enter element 8: 2
    Enter element 9: 3
    Enter element10: 100
    Array elements in Ascending Order:
    1 2 3 11 12 21 32 34 43 100
    Array elements in Descending Order:
    100 43 34 32 21 12 11 3 2 1