编写一个程序输入5个1位的整数,输出由这5个数组成的最大5位数和最小的5位数

求c++代码
编写一个程序输入5个1位的整数,输出由这5个数组成的最大5位数和最小的5位数


#include<iostream>
#include<algorithm>
using namespace std;


int main()
{
    int a[5]={0};
    for(int i=0; i<5; i++)
        cin>>a[i];
     sort(a,a+5);
    cout<<"max=";
    for(int i=4; i>=0; i--)
        cout <<a[i];
    cout << endl;
    if(!a[0]) {
        int tmp=a[0];
        a[0]=a[1];
        a[1]=tmp;
    }
    cout << "min=";
    for(int i=0; i<5; i++)
        cout << a[i];
    return 0;
}

这个题有一定问题,如果不考虑指数等运算方式的话,纯数字排列的话如下,就是将5个数 首先存到数组中,然后进行排序,按顺序按要求输出


#include<iostream>
using namespace std;


void Sort(int arr[])
{
    for (int i = 0; i < 4; i++)
    {
        for (int j = 0; j < 4 - i; j++)
        {
            if (arr[j] < arr[j + 1])
            {
                int tmp = arr[j];
                arr[j] = arr[j + 1];
                arr[j + 1] = tmp;
            }
        }
    }
}
int main()
{
    int arr[5] = { 0 };
    for (int i = 0; i < 5; i++)
    {
        cin>>arr[i];
    }
    Sort(arr);
    cout<<"最大值为:";
    for (int i = 0; i < 5; i++)
    {
        cout<<arr[i];
    }
    cout<<endl;
    cout<<"最小值为:";
    for (int i = 4; i >= 0; i--)
    {
        cout << arr[i];
    }
    cout << endl;
}