double a=0,b=0,c=0,s=0,x1=0,x2=0;
printf("ax2+bx+c=0"); printf("\n输入a b c的值\n");
scanf("%lf%lf%lf",&a,&b,&c);
s=b*b-4*a*c;
if(a==0) { printf("此函数不是一元二次方程\n"); } else { if(s==0) { x1=x2=-b/(2*a); printf("此函数有两个相同的实根:%f\n",x1); } else { if(s>0) { x1=((-b+sqrt(s))/(2*a)); x2=((-b-sqrt(s))/(2*a)); printf("此函数有两个不相同的实根:%f %f\n",x1,x2); } else { double p=0,q=0; p=-b/(2*a); q=sqrt(s)/(2*a); printf("此函数有两个复根:%f+%fi %f-&fi\n",p,q,p,q); } } } system("pause"); return 0; }