请问我这串代码哪里出错了呢

#include<stdio.h>
#include<math.h>
int main()
{
    int a,b,c,d;
    double x1,x2;
    printf("请依次输入abc的值:"); 
    scanf("%d,%d,%d",&a,&b,&c);
    d=b*b-4*a*c;
    if(d==0)
    {
        x1=(-b)/2.0*a;
        printf("x1=x2=%.2f",x1);
     } 
     else if(d>0)
     {
         x1=(-b+sqrt(d))/(2*a);
         x2=(-b+sqrt(d))/(2*a);
         printf("x1=%.2lf,x2=%.2lf",&x1,&x2);
     }
     else
     {
         printf("无实数解!"); 
     }
     return 0;
}

你这x1 x2怎么都是-b+啊 应该一个是-b+一个是-b-