fork download
  1. #include <stdio.h>
  2.  
  3. #define N 20
  4.  
  5. int main()
  6. {
  7. int a[N] = {
  8. 45, 12, 78, 3, 56,
  9. 29, 91, 17, 64, 8,
  10. 33, 70, 1, 52, 86,
  11. 24, 39, 95, 11, 60
  12. };
  13.  
  14. int i, j, min, temp;
  15.  
  16. printf("排序前的数据:\n");
  17. for(i = 0; i < N; i++)
  18. printf("%d ", a[i]);
  19.  
  20. // 简单选择排序
  21. for(i = 0; i < N - 1; i++)
  22. {
  23. min = i;
  24.  
  25. for(j = i + 1; j < N; j++)
  26. {
  27. if(a[j] < a[min])
  28. min = j;
  29. }
  30.  
  31. if(min != i)
  32. {
  33. temp = a[i];
  34. a[i] = a[min];
  35. a[min] = temp;
  36. }
  37. }
  38.  
  39. printf("\n\n简单选择排序后的数据:\n");
  40. for(i = 0; i < N; i++)
  41. printf("%d ", a[i]);
  42.  
  43. return 0;
  44. }
Success #stdin #stdout 0s 544KB
stdin
Standard input is empty
stdout
排序前的数据:
45 12 78 3 56 29 91 17 64 8 33 70 1 52 86 24 39 95 11 60 

简单选择排序后的数据:
1 3 8 11 12 17 24 29 33 39 45 52 56 60 64 70 78 86 91 95