系统报错“无效的二进制操作数”怎么处理啊

#include
#include
#include

int main()
{
double g,x;
char z,y,n;
scanf("%lf\n%c",&g,&z);
if(z==y)
{
if(g<=1000)
printf("13");
if(g>1000)
x=ceil((g-1000)%500.00);
printf("%.2lf",13.0+x4.0);
}
if(z==n)
{
if(g<=1000)
printf("8");
if(g>1000)
printf("%.2lf",8.0+x
4.0);
}
return 0;
}

求余运算%两边必须是整数。你需要把x=ceil((g-1000)%500.00);式中%两边的数都转化为整数

x=ceil((g-1000)%500.00);
取余运算两边得是整数