0
Need help to explain the code pls
int my_array[] = {7, 3, 9, 12, 11}; int n = sizeof(my_array) / sizeof(my_array[0]); for (int i = 0; i < n-1; i++) { bool swapped = false; for (int j = 0; j < n-i-1; j++) { if (my_array[j] > my_array[j+1]) { int temp = my_array[j]; my_array[j] = my_array[j+1]; my_array[j+1] = temp; swapped = true; } } if (!swapped) { break; } } printf("Sorted array: "); for (int i = 0; i < n; i++) { printf("%d ", my_array[i]); } printf("\n");
2 Antworten
+ 1
it's an array sort to sort the values of the array in ascending order i'd guess. once the algorithm doesn't swap the position of the temp value, it means the sorting is done and it outputs the contents of the array.
+ 1
my_arr[] is the array elements. int n is the size of my_arr[]. first two for loops are the whole process for iteration of your my_arr[]. if condition compares 2 array elements. swapping/sorting of array elements will occur once if condition is met. the last for loop will output the sorted my_arr[].