欢迎访问悦橙教程(wld5.com),关注java教程。悦橙教程  java问答|  每日更新
页面导航 : > > 文章正文

选择法冒泡法排序,法冒泡排序,#include<ios

来源: javaer 分享于  点击 27967 次 点评:154

选择法冒泡法排序,法冒泡排序,#include
#include<iostream.h>void MPsort(double array[],int length){    //冒泡法排序    cout<<"你当前选择为冒泡法排序"<<endl;    //定义一个中间变量,存放中间值    double temp;    //外层循环控制比较次数    for(int i=0;i<length-1;i++){        //内层循环控制每次要比较多少次         for(int j=0;j<length-i-1;j++){            if(array[j]>array[j+1])            {temp=array[j];array[j]=array[j+1];array[j+1]=temp;}        }            cout<<"第"<<i+1<<"趟比较:";            for(int q=0;q<length;q++)                cout<<array[q]<<" ";            cout<<endl;    }}void XZsort(double array[],int length){    //选择法排序    cout<<"你当前选择为选择法排序"<<endl;    int i,j,k,temp;    //外层循环控制比较次数    for(i=0;i<length-1;i++){        //k用来存放"当前"最小的元素序号        k=i;        for(j=i+1;j<length;j++)            if(array[k]>array[j])                        //k存放"当前"最小的元素序号                k=j;        //把当前最小的元素存放在array[i]中        temp=array[k];array[k]=array[i];array[i]=temp;        cout<<"第"<<i+1<<"趟比较:";            for(int q=0;q<length;q++)                cout<<array[q]<<" ";            cout<<endl;    }}void main(){    //定义一个数组存放需要排序的数    double array[1000];    int k;    int choice;    cout<<"请输入你要排序的正数,输入-1(负数)作为结束标志:"<<endl;    //输入需要排列的数,并且用k来存放数据长度        for(k=0;;k++){            cin>>array[k];            if(array[k]<0)                break;        }    cout<<"排序前为:";    for(int i=0;i<k;i++){        cout<<array[i]<<"  ";    }    cout<<endl;    cout<<"请选择排序方法:"<<endl;    cout<<"1:冒泡法排序"<<endl;    cout<<"2:选择法排序"<<endl;    cin>>choice;    if(choice==1)    MPsort(array,k);    if(choice==2)    XZsort(array,k);    cout<<"排序后为:";    for(int j=0;j<k;j++){            cout<<array[j]<<"  ";    }    cout<<endl;}//该片段来自于http://byrx.net

相关栏目:

用户点评