用数组输出一段字符,并将其按照由大到小的顺序排列出来

我的程序:

01./*  
02.* 程序的版权和版本声明部分:  
03.* Copyright (c) 2013, 烟台大学计算机学院  
04.* All rights reserved.  
05.* 文件名称:test.cpp  
06.* 作    者:王鲁峰  
07.* 完成日期:2013 年12月2日  
08.* 版 本 号:v1.0  
09.* 对任务及求解方法的描述部分: 
10.* 输入描述:无  
11.* 问题描述:输出一段字符
12.* 程序输入:略  
13.* 程序输出:略 
14.* 算法设计:略  
15.*/    

#include <iostream>
using namespace std;
void bubble_sort (char a[],int b);//将int a[]变成char a[]  下面的一样
void output_array (char a[],int b);
int main()
{

    char a[20]={'s','o','r','t','b','u','b','b','l','e','s','e','l','e','c','t','o','k','o','k'};
    char b[15]={'a','b','a','c','b','l','s','e','t','o','k','d','p','q','w'};
    bubble_sort (a,20);//a代表a[]这个数组  20代表a[]中的元素
    output_array(a,20);
    bubble_sort(b,15);
    output_array(b,15);
    return 0;
}
//下面定义自定义函数
void bubble_sort (char s[],int b)
{int i,j,t;
    for(j=0;j<b-2;j++)//共进行b-1次比较,由于是从0开始的,所以要减去2
    for(i=0;i<b-j-1;i++) //在每趟中要进行b-j次两两比较,由于还是从0开始的,所以再减去一个1
      if(s[i]<s[i+1])
      {
        t=s[i];
        s[i]=s[i+1];
        s[i+1]=t;
    }
    return ;
}
void output_array (char s[],int b)
{
    int i;
    for(i=0;i<b;i++)
    cout<<s[i]<<" ";
    cout<<endl;
       return ;
}


 

运行结果:

心得体会:

      只是将int a[]变成char a[] 下面的一样。

阅读更多
上一篇运用冒泡法结合数组,讲给定的数据按照降序排列出来
下一篇用数组输出一段字符,用选择法见其输出(降序)
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭