c++程序设计题,编写程序,从任意n个数中找出最大数和最小数,并将它们相互交换后输出

感谢大神

#include<iostream>
using namespace std;

int main()
{
    int n;
    cin >> n ; //输入需要排序的数字个数n
    int *p=new int [n];
    for(int i=0;i<n;i++)
    {
        cin >> p[i];  //输入数据 
    } 
    int max=p[0],min=p[0],max_index=0,min_index=0;//max最大值,min最小值,max_index最大值处的下标,min_index最小值处的下标 
    for(int i=0;i<n;i++)
    {
        if(p[i]<min)
        {
            min_index=i;
            min=p[i];
        }
        if(p[i]>max)
        {
            max_index=i;
            max=p[i];
        }
    }
    swap(p[max_index],p[min_index]);  //最大值 最小值 相互交换位置 
    cout << "The maximum number is " << max << endl;
    cout << "The minimun number is " << min << endl;
    return 0; 
}

温馨提示:答案为网友推荐,仅供参考
相似回答