C语言实验——最值

    xiaoxiao2021-12-14  18

    Problem Description

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

    Input

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

    Output

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

    Example Input

    5 2 1 5 4 3

    Example Output

    1 2 3 4 5

    #include<stdio.h> int main() { int n,i,a[10],t1,t2,x1=0,x2=0,max,min; scanf("%d",&n); for(i=0;i<n;i++) { scanf("%d",&a[i]); } max=a[0];min=a[0]; for(i=1;i<n;i++) { if(max<a[i]) { max=a[i]; x1=i; } if(min>a[i]) { min=a[i]; x2=i; } } t1=a[0]; t2=a[n-1]; a[0]=min;a[n-1]=max; a[x1]=t2; a[x2]=t1; for(i=0;i<n;i++) {    if(i==n-1)    printf("%d\n",a[i]);    else     printf("%d ",a[i]); } return 0; }

    转载请注明原文地址: https://ju.6miu.com/read-969629.html

    最新回复(0)