代码答案一直出错,不知道哪里需要改

Description

There are some students in a class, Can you help teacher find the highest student .

Input

There are some cases. The first line contains an integer t, indicate the cases; Each case have an integer n ( 1 ≤ n ≤ 100 ) , followed n students’ height.

Output

For each case output the highest height, the height to two decimal plases;

Sample Input

2
3 170.00 165.00 180.00
4 165.00 182.00 172.00 160.00
Sample Output

180.00
182.00


#include<stdio.h>
int main()
{
    int t;
    scanf("%d", &t);
    for (int i = 0; i < t; i++)
    {
        int n;
        scanf("%d", &n);
        double a[100] = {'\0'};
        for (int j = 0; j < n; j++)
        {
            scanf("%lf", &a[i]);
        }
        double max=0.0;
        for (int k = 0; k < n; k++)
        {
            if (a[i] > max)
                max = a[i];
        }
        printf("%.2lf\n", max);
    }
    return 0;
}

修改如下,供参考:

#include<stdio.h>
int main()
{
    int t;
    scanf("%d", &t);
    for (int i = 0; i < t; i++)
    {
        int n;
        double a, max;
        scanf("%d", &n);
        for (int j = 0; j < n; j++)
        {
            scanf("%lf", &a);
            if (j == 0) {
                max = a;
            }
            else {
                if (max < a)max = a;
            }
        }
        printf("%.2lf\n", max);
    }
    return 0;
}

题主的代码修改如下,问题见注释:

#include<stdio.h>
int main()
{
    int t;
    scanf("%d", &t);
    for (int i = 0; i < t; i++)
    {
        int n;
        scanf("%d", &n);
        double a[100] = { 0 };//double a[100] = { '\0' };
        for (int j = 0; j < n; j++)
        {
            scanf("%lf", &a[j]);//scanf("%lf", &a[i]);
        }
        double max = 0.0;
        for (int k = 0; k < n; k++)
        {
            if (a[k] > max)  //if (a[i] > max)
                max = a[k];  //max = a[i];
        }
        printf("%.2lf\n", max);
    }
    return 0;
}

编译软件控制台的报错信息是什么...这很重要