问题及代码:
/*
*Copyright (c)2014,烟台大学计算机与控制工程学院
*All rights reserved.
*文件名称:number.cpp
*作 者:赵敏
*完成日期:2014年11月23日
*版 本 号:v1.0
*
*问题描述:编写函数,完成冒泡排序,要求不能改变下面的main函数,字符数组排序。
*/
#include <iostream>
#include<cmath>
using namespace std;
//两个函数bubble_sort和output_array的声明
void bubble_sort(char m[],int n);
void output_array(char m[],int n);
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]={'o','u','t','p','u','t','a','r','r','a','y','a','b','c','d'};
bubble_sort(a,20); //用冒泡法按降序排序a中元素
output_array(a,20); //输出排序后的数组
bubble_sort(b,15); //用冒泡法按降序排序b中元素
output_array(b,15); //输出排序后的数组
return 0;
}
//请在下面定义bubble_sort和output_array函数}
void bubble_sort(char m[],int n)
{
int i,j,t;
for(j=0;j<n-1;j++)
for(i=0;i<n-j-1;i++)
if(m[i]<m[i+1])
{
t=m[i];
m[i]=m[i+1];
m[i+1]=t;
}
}
void output_array(char m[],int n)
{
int i;
for(i=0;i<n-1;i++)
cout<<m[i]<<" ";
cout<<m[n-1]<<"\n";
return;
}
运行结果:
学习心得:
只要改变数据类型就好~