fork download
  1. #include <stdio.h>
  2.  
  3. int cmp(int x, int y){ // compare x and y
  4.  
  5. return x < y; // 1 if x > y, 0 otherwise
  6. }
  7.  
  8. void swap(int *x, int *y){
  9. int tmp = *x;
  10.  
  11. *x = *y;
  12. *y = tmp;
  13. }
  14.  
  15. int main(void) {
  16. int a[] = {3, 1, 4, 1, 5, 9, 2, 6, 5}; // array to be sorted
  17. size_t n = sizeof a / sizeof a[0]; // number of elements
  18.  
  19. for (size_t i = 0; i < n - 1; ++i) {
  20. for (size_t j = 0; j < n - 1 - i; ++j) {
  21. if (cmp(a[j],a[j+1])) {
  22. swap(&a[j],&a[j+1]);
  23. }
  24. }
  25. }
  26.  
  27. for (size_t i = 0; i < n; ++i) {
  28. printf("%d ", a[i]);
  29. }
  30. printf("\n") ;
  31.  
  32. return 0;
  33. }
Success #stdin #stdout 0s 5348KB
stdin
Standard input is empty
stdout
9 6 5 5 4 3 2 1 1