a,b,c为1 2 1 时明明是有解的啊。。检查了好几遍实在不知道错在哪儿了
scanf("%lf%lf%lf",&a,&b,&c);
第一个输入语句,三个%f之间加一个空格试试
else if(n=0) 改成else if(n==0)应该就行了
先不说问题,说个建议,if else这些,用缩进排一下,看起来太乱了。这样哪个else对应哪个if都不好说,很容易在逻辑上出错。