第十四周上机实践项目——选择排序

来源:互联网 发布:wps office软件下载 编辑:程序博客网 时间:2024/05/19 00:16
/*             *程序的版权和版本声明部分:             *Copyright(c)2013,烟台大学计算机学院学生            *All rights reserved.            *文件名称:字符数组排序             *作者:刘中林             *完成日期:2013年 12月02日             *版本号:v1.0             *对任务及求解方法的描述部分:先定义一个最小值,通过循环,得到真正的最小值,依次从小到大输出*输入描述:定义的数组         *问题描述: 无   *程序输出: 输出排序后的数组    *问题分析: 无            *算法设计:选择排序法的应用         */#include <iostream>using namespace std;void select_sort(int arr[], int num);void output_array(int arr[], int num);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;}//下面定义自定义函数void select_sort(int array[],int n) //形参array是数组名{    int i,j,k,t;    for(i=0; i<n-1; i++)    {        k=i;  //先设第i个就为最小        for(j=i+1; j<n; j++)            if(array[j]<array[k])                k=j;   //通过循环,得到k为最小        t=array[k];    //交换a[i]和a[k]        array[k]=array[i];        array[i]=t;    }    return;}void output_array(int arr[], int num){    int i;    for(i=0; i<num-1; i++)        cout<<arr[i]<<",";        cout<<arr[num-1]<<endl;    return;}


*样例输出:

心得体会:最后的输出有点迷惑。。不过这样输出第一组数输出结尾没有那个多余的逗号。。怎么回事。。

 

原创粉丝点击