| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1938 人关注过本帖
标题:一个for循环完成冒泡排序
取消只看楼主 加入收藏
lyb661
Rank: 5Rank: 5
等 级:贵宾
威 望:18
帖 子:47
专家分:83
注 册:2018-12-12
结帖率:71.43%
收藏
已结贴  问题点数:20 回复次数:1 
一个for循环完成冒泡排序
///一个for循环完成冒泡排序

#include <iostream>
using namespace std;

void swap_arr(int& a,int& b)
{
    int temp=a;
    a=b;
    b=temp;
}

void print_arr(int a[],int n)
{
    for(int i=0;i<n;i++){
        if(i>0)
            cout<<" ";
        cout<<a[i];
    }
}

void bubble_sort(int a[],int n)
{
    for(int i=0;i<n-1;i++){
        if(a[i]>a[i+1])
            swap_arr(a[i],a[i+1]);
        if(i==n-2){      //当i的自增到本轮循环最大
            i=-1;    //i赋值-1开始新一轮循环
            n--;     //i的值自增 n的值自减
        }
    }
}

int main() {
    int a[]={31,25,64,53,84,41,79};
    int n=sizeof a/sizeof a[0];
    print_arr(a,n);

    cout<<"\n--------split Line-----------\n";

    bubble_sort(a,n);
    print_arr(a,n);

    return 0;
}



[此贴子已经被作者于2019-1-10 15:01编辑过]

搜索更多相关主题的帖子: for 循环 冒泡排序 int cout 
2019-01-10 14:57
lyb661
Rank: 5Rank: 5
等 级:贵宾
威 望:18
帖 子:47
专家分:83
注 册:2018-12-12
收藏
得分:0 
学习排序法,是为了加深对C语言底层技术的理解。如果选择C语言泛型编程与标准库,当然方便!
2019-01-11 02:07
快速回复:一个for循环完成冒泡排序
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.026122 second(s), 11 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved