关于解二元一次方程组的有关问题

关于解二元一次方程组的问题#includestdio.h#includemath.hint main(){char xdo{int a,b,cdouble x1

关于解二元一次方程组的问题
#include<stdio.h>
#include<math.h>
int main()
{char x;
do
{int a,b,c;
double x1,x2,e,p,q;
printf("请输入一个一元二次方程()x^2+()x+()=0\n");
scanf("%d%d%d",&a,&b,&c);
printf("你设定的方程为%dx^2+%dx+%d=0\n",a,b,c);
  e=b*b-a*a*c;
if(e<0){
printf("方程无解");
  return 0;
}
p=-b/(2.0*a);
q=sqrt(e)/(2.0*a);
x1=p+q;x2=p-q;
printf("x1=%.2f\nx2=%.2f\n",x1,x2);
}
  printf("是否要继续 Y/N");
scanf("%c",&x);
while(x=='Y'||x=='y');
return 0;

}
请大侠看看哪里有问题?

[解决办法]
问题1:
e的计算出错,应该是e=b*b-4*a*c
问题2:
do{}while(表达式);这个循环的用法错了,while应该放在花括号的后面
按照你的思路作的修改:

C/C++ code
do{.....省略printf("是否要继续 Y/N");scanf("%c",&x);}while(x=='Y'||x=='y');