求方程a*x*x+b*x+c的根,用3个函数分别求当判别式大于0,小于0,等于0的根并输入结果.从主函数输入a,b,c各位看看我的程序,结果只到了输出判别式disc的那步,然后不执行子函数,哪里错了...#include#inc
来源:学生作业帮助网 编辑:作业帮 时间:2024/07/03 13:05:09
![求方程a*x*x+b*x+c的根,用3个函数分别求当判别式大于0,小于0,等于0的根并输入结果.从主函数输入a,b,c各位看看我的程序,结果只到了输出判别式disc的那步,然后不执行子函数,哪里错了...#include#inc](/uploads/image/z/13249260-36-0.jpg?t=%E6%B1%82%E6%96%B9%E7%A8%8Ba%2Ax%2Ax%2Bb%2Ax%2Bc%E7%9A%84%E6%A0%B9%2C%E7%94%A83%E4%B8%AA%E5%87%BD%E6%95%B0%E5%88%86%E5%88%AB%E6%B1%82%E5%BD%93%E5%88%A4%E5%88%AB%E5%BC%8F%E5%A4%A7%E4%BA%8E0%2C%E5%B0%8F%E4%BA%8E0%2C%E7%AD%89%E4%BA%8E0%E7%9A%84%E6%A0%B9%E5%B9%B6%E8%BE%93%E5%85%A5%E7%BB%93%E6%9E%9C.%E4%BB%8E%E4%B8%BB%E5%87%BD%E6%95%B0%E8%BE%93%E5%85%A5a%2Cb%2Cc%E5%90%84%E4%BD%8D%E7%9C%8B%E7%9C%8B%E6%88%91%E7%9A%84%E7%A8%8B%E5%BA%8F%2C%E7%BB%93%E6%9E%9C%E5%8F%AA%E5%88%B0%E4%BA%86%E8%BE%93%E5%87%BA%E5%88%A4%E5%88%AB%E5%BC%8Fdisc%E7%9A%84%E9%82%A3%E6%AD%A5%2C%E7%84%B6%E5%90%8E%E4%B8%8D%E6%89%A7%E8%A1%8C%E5%AD%90%E5%87%BD%E6%95%B0%2C%E5%93%AA%E9%87%8C%E9%94%99%E4%BA%86...%23include%23inc)
求方程a*x*x+b*x+c的根,用3个函数分别求当判别式大于0,小于0,等于0的根并输入结果.从主函数输入a,b,c各位看看我的程序,结果只到了输出判别式disc的那步,然后不执行子函数,哪里错了...#include#inc
求方程a*x*x+b*x+c的根,用3个函数分别求当判别式大于0,小于0,等于0的根并输入结果.从主函数输入a,b,c
各位看看我的程序,结果只到了输出判别式disc的那步,然后不执行子函数,哪里错了...
#include
#include
int dengyu(int a,int b,int c)
{
double x1,x2,p,q,disc;
p=-b/(2.0*a);
q=sqrt(disc)/(2.0*a);
x1=p+q;
x2=p-q;
printf("x1=%f\tx2=%f\n",x1,x2);
getchar();
return 0;
}
int dayu(int a,int b,int c)
{
double x1,x2,p,q,disc;
p=-b/(2.0*a);
q=sqrt(disc)/(2.0*a);
x1=p+q;
x2=p-q;
printf("x1=%f\tx2=%f\n",x1,x2);
getchar();
return 0;
}
int xiaoyu(int a,int b,int c)
{
double p,q,disc;
p=-b/(2*a);
q=sqrt(-disc)/(2*a);
printf("x1=%f+%fi\tx2=%f-%fi\n",p,q,p,q);
getchar();
return 0;
}
void main()
{
int a,b,c;
int disc;
printf("请按顺序输入二元一次方程的二次项系数a(不为0),一次项系数b,常数项c\n");
scanf("%d%d%d",&a,&b,&c);
disc=b*b-4*a*c;
printf("disc=%d",disc);
if(disc=0)
dengyu(a,b,c);
if(disc>0)
dayu(a,b,c);
if(disc
求方程a*x*x+b*x+c的根,用3个函数分别求当判别式大于0,小于0,等于0的根并输入结果.从主函数输入a,b,c各位看看我的程序,结果只到了输出判别式disc的那步,然后不执行子函数,哪里错了...#include#inc
if(disc=0)改为if(disc==0)
disc=0为赋值语句.
在所有的调用函数里出现了disc,但disc没有计算且没有初始化,需重新计算吧
另外建议printf("disc=%d",disc);改为printf("disc=%d\n",disc);进行换行,显示效果会好点