当前位置: 代码迷 >> C语言 >> 高手帮忙看下啊那里错了!
  详细解决方案

高手帮忙看下啊那里错了!

热度:198   发布时间:2008-04-17 15:38:59.0
高手帮忙看下啊那里错了!
#include<stdio.h>
#include<math.h>
void main()
{
float a,b,c,d,x,y,z;
char f;
loop: printf("一元二次函数求解:\n 请输入参数\n");
scanf("%f\n%f\n%f",&a,&b,&c);
  {
  d=b*b-(4*a*c);
  if(d>0)
    {
    x=(-b+sqrt(d))/(2*a);
    y=(-b-sqrt(d))/(2*a);
    printf("答案是:\n%f\n%f\n",x,y);
    }
  else if(d<0)
    printf("此题无解\n");
  else
    {
    z=-b/(2*a);
    printf("答案是:\n %f\n",z);
    }
   }
  else printf("a不能位0");
printf("想继续请按Y想退出按E");
scanf("%c",&f);
if(f=='y')
goto loop;
}
/*其中的scanf("%c",&f);在运行是被直接跳过,是怎么会使啊?编译能通过!*/
----------------解决方案--------------------------------------------------------
补充!
第留行少了一句:if(a!=0)
----------------解决方案--------------------------------------------------------
换成 f = getchar()看看。
----------------解决方案--------------------------------------------------------
  相关解决方案