黑马程序员技术交流社区

标题: C语言经典编程题-选择排序 [打印本页]

作者: lxhmcxy    时间: 2015-10-7 22:52
标题: C语言经典编程题-选择排序
#include <stdio.h>
/*
编程题:
1.写一个函数,对传入的整型数组实现从大到小的选择排序,并在函数内部打印最终一遍排序的结果.
答题规范:
1>函数名自己定义.
2>函数参数的个数自己定义.
3>函数的返回值为空.
*/

//声明函数
void selectSort(int arr[],int len);
int main(){
    //定义一个整型数组
    int arr[7] = {3,5,1,10,15,7,9};
    //定义数组的长度变量
    int len = sizeof(arr)/sizeof(int);
    //调用排序函数
    selectSort(arr,len);
    return 0;
}
//排序函数
void selectSort(int arr[],int len){
    int tempMaxIndex = 0;
    for (int i = 0; i < len-1; i++) {
        for (int j = i+1; j < len; j++) {
            if(arr[tempMaxIndex] < arr[j]){
                tempMaxIndex = j;
            }
        }
        int temp = arr;
        arr = arr[tempMaxIndex];
        arr[tempMaxIndex] = temp;
    }
    //打印排序后的结果
    for (int k = 0; k < len; k++) {
        printf("%d ",arr[k]);
    }

    printf("\n");
}


作者: lvguodong    时间: 2015-10-7 23:07
很好!可惜我没有写出来,我用的还是冒泡。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2