美文网首页
练习: 输入整型数组和排序标识,对其元素按照升序或降序进行排序

练习: 输入整型数组和排序标识,对其元素按照升序或降序进行排序

作者: 小呉同学 | 来源:发表于2018-04-06 16:24 被阅读0次
说明:

描述:
输入整型数组和排序标识,对其元素按照升序或降序进行排序
原型:
void sortIntegerArray(Integer[] pIntegerArray, int iSortFlag);
输入参数:
Integer[] pIntegerArray:整型数组
int iSortFlag:排序标识:0表示按升序,1表示按降序
输出参数:

返回值:
void
输入
1、输入需要输入的整型数个数
2、输入数组组
3、输入排序标识
输出
输出排好序的数字
最后一个无空格

如下例子 :
样例输入 8 1 2 4 9 3 55 64 25 0
样例输出 1 2 3 4 9 25 55 64

C实现:
#include <iostream>  
  
using namespace std;  
  
void myswap(int &a,int &b)  
{  
    int temp;  
    temp = b;  
    b=a;  
    a=temp;  
}  
void sortIntegerArray(int p[],int n,int flag)  
{  
    for(int a = 1;a<n;a++)       //冒泡排序法  
    {  
        for(int b=1;b<n-a+1;b++)  
        {  
            if(p[b-1]<p[b])  
            myswap(p[b-1],p[b]);  
        }  
    }  
    if(flag==1)  
    {  
        for(int a=0;a<n;a++)  
            cout<<p[a]<<" ";  
    }  
    else if(flag==0)  
    {  
        for(int a=0;a<n;a++)  
            cout<<p[n-a-1]<<" ";  
    }  
}  
  
int qqmain()  
{  
    while(1)  
    {  
        int n,k;  
        cout<<"请输入数组元素个数:" <<endl;  
        cin>>n;  
  
        cout<<"请输入数组元素:" <<endl;  
        int *p = new int[n];  
        for(int m=0;m<n;m++)  
            cin>>p[m];  
  
        cout<<"请选择升序或者降序,升序按0,降序按1"<<endl;  
        cin>>k;  
      
  
        cout<<"原序列:";  
        for(int m=0;m<n;m++)  
            cout<<p[m]<<" ";  
  
        cout<<endl<<"排序后:"<<endl;  
        sortIntegerArray(p,n,k);  
    }  
    return 0;  
}  

相关文章

网友评论

      本文标题:练习: 输入整型数组和排序标识,对其元素按照升序或降序进行排序

      本文链接:https://www.haomeiwen.com/subject/gqjshftx.html