请解决一下用C语言做四则运算的时候,若运算符为“/”号的时候,能处理除数为0的情况

请解决一下用C语言做四则运算的时候,若运算符为“/”号的时候,能处理除数为0的情况

#include
int main()
{
double a,b,i;
char c;
printf("请输入四则运算表达式:");
scanf("%lf%c%lf",&a,&c,&b);
i=b;
if(i==0)
{
printf("0不能做被除数\n");
}
else
{
switch(c)
{
case'+':printf("%lf+%lf=%lf\n",a,b,a+b);break;
case'-':printf("%lf-%lf=%lf\n",a,b,a-b);break;
case'':printf("%lf%lf=%lf\n",a,b,a*b);break;
case'/':printf("%lf/%lf=%lf\n",a,b,a/b);break;
default:printf("输出结果为\n");
}
}
}

在5-0或5+0或5*0的时候都显示了“0不能作被除数”
想在进行+-的时候+0,-0,0能进行正常的计算