求实数的绝对值(c语言),不知道哪里错了,答案一直不正确


#include<stdio.h>
#include<math.h>
int main()
{
    float n;
    while (scanf("%f",&n)!=EOF)
    {
        printf("%.2f\n", fabs(n));
    }
    return 0;
}

我这里运行没有错误呢,能运行好几个数
关键是循环出不来,很难受哈哈哈

#include<stdio.h>
#include<math.h>
int main()
{
    float n;
    while (1)
    {
        scanf("%f",&n);
        printf("%.2f\n", fabs(n));
        if(n==0)break;//输入零结束 
    }
    return 0;
}

看代码没问题啊,怎么不正确的答案?