1170 C语言实验-----最值

时间:2022-08-10 05:10:35

C语言实验——最值

Time Limit: 1000ms   Memory limit: 65536K  有疑问?点这里^_^

题目描述

有一个长度为n的整数序列,其中最大值和最小值不会出现在序列的第一和最后一个位置。
请写一个程序,把序列中的最小值与第一个数交换,最大值与最后一个数交换。输出转换好的序列。

输入

输入包括两行。
第一行为正整数n(1≤n≤10)。
第二行为n个正整数组成的序列。

输出

输出转换好的序列。数据之间用空格隔开。

示例输入

5
2 1 5 4 3

示例输出

1 2 3 4 5






#include
int main()
{
    int n, t, ma, mi, i;
    int max, min;
    int a[10];
    scanf("%d",&n);
    for(i = 0; i <= n-1; i++)
    {
        scanf("%d",&a[i]);
    }
    max = a[0];
    min = a[0];
    for(i = 0; i <= n-1; i++)
    {
        if(a[i] > max)
        {
            max = a[i];
            ma = i;
        }
        if(a[i] < min)
        {
             min = a[i];
             mi = i;
        }
    }
    t = a[ma];
    a[ma] = a[n-1];
    a[n-1] = t;
    t = a[mi];
    a[mi] = a[0];
    a[0] = t;
    for(i = 0; i <= n-1; i++)
    {
        if(i ==0)
            printf("%d",a[i]);
        else
            printf(" %d",a[i]);
    }
    return 0;
}