A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© Davidchen 中级黑马   /  2015-12-14 21:17  /  1587 人查看  /  11 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 Davidchen 于 2015-12-14 21:25 编辑

这是个忧桑的故事........今天听的是迷迷糊糊的,冒泡代码未完待续>>>>>>


给大家分享下从大到小 选择排序,欢迎交流

#include <stdio.h>
void selctSort(int arr[],int length);
int main(){

    int arr[3]={3,2,7};
    selctSort(arr,3);
    for (int a=0;a<3;a++){
        printf("%d\t",arr[a]);
    }
    printf("\n");
    return 0;
}
void selctSort(int arr[],int length){
    for (int i=0;i<length-1;i++){
        for (int j=i+1;j<length;j++){
            int temp;
            if(arr<arr[j]){
                temp=arr;
                arr=arr[j];
                arr[j]=temp;

            }
        }
    }
}



11 个回复

倒序浏览
pn314754148 来自手机 中级黑马 2015-12-14 23:02:36
沙发
代码没有换行,看不懂
回复 使用道具 举报
为啥要 i<length-1
回复 使用道具 举报

不减也可以
回复 使用道具 举报
pn314754148 发表于 2015-12-14 23:02
代码没有换行,看不懂

排版问题,哈哈
回复 使用道具 举报
if语句里面  arr<arr[j]??  数组小于数组里的某个元素?
回复 使用道具 举报

i 是判断行数,    j 是判断列数.
回复 使用道具 举报
Davidchen 发表于 2015-12-17 21:01
i 是判断行数,    j 是判断列数.

你没看懂我说的,我问你为什么if语句里面写着 arr<arr[j]?  用一个数组跟一个数组元素比大小?
回复 使用道具 举报
pn314754148 发表于 2015-12-17 21:58
你没看懂我说的,我问你为什么if语句里面写着 arr

sorry 应该是arr
回复 使用道具 举报

应该是arr<arr[j].  元素跟元素比.
回复 使用道具 举报

咋打不上啊   是arr
回复 使用道具 举报
更正下错误   从倒数第4行代码往下
  1. arr 更改为  arr[i]
复制代码
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马