求助,0分,原因是too short on line 1

B2095 白细胞计数

lydia0814 @ 2023-11-16 20:01:28

#include<stdio.h>
int main()
{
    int n;
    double a[300];
    int i,j;
    double sum=0.0;
    double t;
    double average,t1,t2,t3;
    scanf("%d",&n);
    for(i=0;i<n;i++){
        scanf("%lf",&a[i]);
        printf("\n");
    }
    for(i=1;i<n;i++){
        for(j=n-1;j>=i;j--){
            if(a[j]<a[j-1]){
                t=a[j];
                a[j]=a[j-1];
                a[j-1]=t;
            }
        }
    }
    for(i=1;i<n-1;i++){
        sum+=a[i];
    }
    average=sum/(n-2);
    t1=average-a[1];
    t2=a[n-2]-average;
    if(t1>t2){
        t3=t1;
        t1=t2;
        t2=t3;
    }
    printf("%.2f %.2f",average,t2);
    return 0;
}

by juruo_zxt @ 2023-11-16 20:03:13

第13行printf("\n");可以去掉吧


by juruo_zxt @ 2023-11-16 20:04:08

@lydia0814 去掉第十三行,满分


by lydia0814 @ 2023-11-21 11:50:46

@PHzxt 谢谢!可以问问为什么吗?


by juruo_zxt @ 2023-11-21 20:34:55

@lydia0814 错误原因翻译过来是输出的第一行太短,而你每次输入都输出一个换行,所以输出的第一行是空的。不用自己输出换行,它输入的时候会有换行的


|