c语言,请问我的代码哪里出现了问题

img

#include<stdio.h>
int main()
{
char e[31];
double c,d;
while(scanf("%s %lf",e,&c)!='0')
{
    if(c<=2880)
    d=c*0.48;
    else if(c<=4800)
        d=2880*0.48+(c-2880)*0.53;
            else d=2880*0.48+(4800-2880)*0.53+(c-4800)*0.78;
    printf("%s:%.2f\n",e,d);

}
return 0;
}

oj显示Output Limit Exceed

循环输入的结束条件修改下,供参考:
while(scanf("%s %lf",e,&c)!=EOF && c!=0)//ctrl+z 或 输入0 0 结束输入