code_art_bcm_10.c

#include <stdio.h>

#define SIZE 10

void bubbleSort(int arr[], int n);
void swap(int xp, int yp);
void printArray(int arr[], int size);

int main() {
    int arr[SIZE] = {64, 34, 25, 12, 22, 11, 90, 88, 45, 1};

    printf("Unsorted array: \n");
    printArray(arr, SIZE);

    bubbleSort(arr, SIZE);

    printf("\nSorted array: \n");
    printArray(arr, SIZE);

    return 0;
}

void bubbleSort(int arr[], int n) {
    int i, j;
    for (i = 0; i < n-1; i++)
        for (j = 0; j < n-i-1; j++)
            if (arr[j] > arr[j+1])
                swap(&arr[j], &arr[j+1]);
}

void swap(int xp, int yp) {
    int temp = *xp;
    xp = yp;
    *yp = temp;
}

void printArray(int arr[], int size) {
    int i;
    for (i=0; i < size; i++)
        printf("%d ", arr[i]);
    printf("\n");
}