首页 > 编程语言 > 详细

2.31模型--数组排序函数

时间:2019-06-29 10:51:09      阅读:95      评论:0      收藏:0      [点我收藏+]

【注:本程序验证是使用vs2013版】

 

#include <stdio.h>
#include <string.h>
#include <stdlib.h>
/*
     这里注意:
     如果数组作为函数参数,数组形参退化为指针(主要是为了高效)
     所以此处形参  *src 、 src[]、  src[1]  的实际效果一样
*/
int sort_array(int *src, int length){ 
    int  i, j, temp, ret;
    int *from = src; //这里是否设置成全局变量更好?
    if (from == 0){        return -1;        }
    
    for (i = 0; i < length - 1; i++){//选择法排序
        for (j = i + 1; j < length; j++){
            if (from[i] > from[j]){
                temp = from[j];
                from[j] = from[i];
                from[i] = temp;
            }
        }
    }
    return 0;
}


int main(void){
    int a[] = { 10, 7, 1, 9, 4, 6, 7, 3, 2, 0 };
    int i = 0;
    int length = sizeof(a) / sizeof(a[0]);
    int ret = 0;

    printf("排序前");
    for (i = 0; i < length; i++){
        printf("%d  ", a[i]);
    }
    printf("\n");
  技术分享图片 ret
= sort_array(a, length);//参数:数组名、需要排序的长度 if (ret != 0){ return; } printf("排序后"); for (i = 0; i < length; i++){ printf("%d ", a[i]); }
  技术分享图片 printf(
"\n"); system("pause"); return 0; }

 

2.31模型--数组排序函数

原文:https://www.cnblogs.com/wlstm/p/11105489.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!