diff --git a/Beginner/Bubble sort 2111200001077.c b/Beginner/Bubble sort 2111200001077.c new file mode 100644 index 00000000..bdb395d3 --- /dev/null +++ b/Beginner/Bubble sort 2111200001077.c @@ -0,0 +1,46 @@ +// Bubble sort in C + +#include + +// perform the bubble sort +void bubbleSort(int array[], int size) { + + // loop to access each array element + for (int step = 0; step < size - 1; ++step) { + + // loop to compare array elements + for (int i = 0; i < size - step - 1; ++i) { + + // compare two adjacent elements + // change > to < to sort in descending order + if (array[i] > array[i + 1]) { + + // swapping occurs if elements + // are not in the intended order + int temp = array[i]; + array[i] = array[i + 1]; + array[i + 1] = temp; + } + } + } +} + +// print array +void printArray(int array[], int size) { + for (int i = 0; i < size; ++i) { + printf("%d ", array[i]); + } + printf("\n"); +} + +int main() { + int data[] = {-2, 45, 0, 11, -9}; + + // find the array's length + int size = sizeof(data) / sizeof(data[0]); + + bubbleSort(data, size); + + printf("Sorted Array in Ascending Order:\n"); + printArray(data, size); +}