2019-3-1 小中大

问题描述

试题编号: 201903-1
试题名称: 小中大
时间限制: 1.0s
内存限制: 512.0MB
问题描述:

 
#include<stdio.h>
#include<string.h>
#include<map>
/*16:43   17:29*/
int main ()
{
    int n;
    int a[100010];
    scanf("%d",&n);
    for(int i=0;i<n;i++)
    {
        scanf("%d",&a[i]);
    }
    int max=a[0],min=a[n-1];
    int mid;
    if(a[0]<a[n-1])
    {
        max=a[n-1];
        min=a[0];
    }
    if(n%2==0)//n为偶数
    {
        mid=(a[n/2]+a[n/2-1]);
        if(mid%2==1)//小数
        {
            printf("%d %.1f %d\n",max,(double)(mid/2.0),min);
        }
        else
        {
            printf("%d %d %d\n",max,mid/2,min);
        }
    }
    else//n为奇数
    {
        printf("%d %d %d\n",max,a[n/2],min);
    }
    return 0;
}
/*
3
-1 2 4

4
-2 -1 3 4
*/

  

收获:
四舍五入(格式控制)
#include<stdio.h>
#include<string.h>
#include<map>
/** \brief
 printf输出格式控制,默认遵循四舍五入
 */

int main ()
{
    double a=1.54,b=1.55;
    printf("%.1lf %.1lf\n",a,b);
    return 0;
}
//1.5 1.6

 

posted @ 2021-02-28 18:44  永恒&  阅读(51)  评论(0编辑  收藏  举报