微信图片_20210412163542.png

    1. #include<stdio.h>
    2. void printarry(int a[], int length, int n);
    3. void printarrydetil(int a[], int length, int d);
    4. void printarry(int a[], int length, int n) {
    5. if (n)
    6. printf("经过排序的数:\t");
    7. else
    8. printf("未经过排序的数:\t");
    9. for (int i = 0; i < length - 1; i++)
    10. {
    11. printf("%d\t", a[i]);
    12. }
    13. printf("\n");
    14. }
    15. void printarrydetil(int a[], int length, int d) {
    16. printf("经过第%d轮选择排序的数:", d + 1);
    17. for (int i = 0; i < length - 1; i++)
    18. {
    19. printf("%d\t", a[i]);
    20. }
    21. printf("\n");
    22. }
    23. int main(void) {
    24. int arry[] = { 50,46,89,51,23,65,52,62 };
    25. int length = 8;
    26. int n;
    27. for (int i = 0; i < length - 1; i++)
    28. {
    29. int min;
    30. min = i;
    31. for (int j = i+1; j < length - 1; j++)
    32. {
    33. if (arry[j] < arry[min])
    34. {
    35. min = j;
    36. }
    37. }
    38. if (min != i) {
    39. int t;
    40. t = arry[i];
    41. arry[i] = arry[min];
    42. arry[min] = t;
    43. }
    44. printarrydetil(arry, length, i);
    45. }
    46. n = 1;
    47. printarry(arry, length, n);
    48. return 0;
    49. }