第十三周项目四 数组的排序(3)

来源:互联网 发布:数控车床排刀怎么编程 编辑:程序博客网 时间:2024/04/29 11:08

问题及代码:

/** Copyright (c) 2014, 烟台大学计算机学院* All rights reserved.* 文件名称:Project4.cpp* 作    者:chenqin.* 完成日期:2014年11月25日* 版 本 号:v1.0** 问题描述: 改造(1)程序,体验选择排序,将bubble_sort()改为select_sort(),排序算法有冒泡排序换做选择排序* 输入描述:* 程序输出:*/#include <iostream>using namespace std;void select_sort(int m[],int n);void output_array(int m[],int n);int main( ){    int a[20]= {86,76,62,58,77,85,92,80,96,88,77,67,80,68,88,87,64,59,61,76};    int b[15]= {27,61,49,88,4,20,28,31,42,62,64,14,88,27,73};    select_sort(a,20);   //用冒泡法按降序排序a中元素    output_array(a,20);   //输出排序后的数组    select_sort(b,15);   //用冒泡法按降序排序b中元素    output_array(b,15);   //输出排序后的数组    return 0;}//请在下面定义bubble_sort和output_array函数void select_sort(int m[],int n){    int i,j,k,t;    for(i=0; i<n-1; i++)    {        k=i;  //先设第i个就为最小        for(j=i+1; j<n; j++)            if(m[j]<m[k])                k=j;   //通过循环,得到k为最小        t=m[k];    //交换a[i]和a[k]        m[k]=m[i];        m[i]=t;    }    return;}void output_array(int m[],int n){    int i;    for(i=0; i<n-1; ++i)        cout<<m[i]<<",";    cout<<m[n-1]<<"\n";    return;}

运行结果:

知识点总结:选择排序

学习心得:学会举一反三

0 0
原创粉丝点击