检查了好几遍都没找到,请问是哪里错了?

img

#include<stdio.h>

int main(void)
{
double a[50], num, lar;
int i = 0;

do{
    printf("Enter a number:");
    scanf("%f", &num);
    a[i] = num;
    if( i > 0 && a[i] > a[i - 1])
        lar = a[i];
    i++;
}while( num > 0 );
        

printf("The largest number entered was %f", lar);

return 0;

}

img

供参考:

#include<stdio.h>
int main(void)
{
    double a[50], num, lar=0;
    int i = 0;
    do{
        printf("Enter a number:");
        scanf("%lf", &num);  //scanf("%f", &num);
        if(num <= 0)  break;
        if(lar < num) lar = num;
        //a[i] = num;
        //if( i > 0 && a[i] > a[i - 1])
        //lar = a[i];
        //i++;
    }while(1); //while( num > 0 );
    printf("The largest number entered was %f", lar);
    return 0;
}