词文 2018-12-23 15:33 采纳率: 0%
浏览 317

这个关于方程解的程序错在哪了

#include <stdio.h>
#include <math.h>
int main()
{
  int a,b,c,k;
  float x1,x2;
  printf("please input a,b,c");
  scanf("%d%d%d",&a,&b,&c);
  k=sqrt(b*b-4*a*c);
  x1=((-2)*b+k)/(4*a);
  x2=((-2)*b-k)/(4*a);
  if(k<0)
      printf("该方程无解\n");
  else if(k>0)
      printf("该方程有两根:x1=%.2f x2=%.2f",x1,x2);
  else
      printf("该方程有两个相等的根:x1=x2=%f",x1);
  printf("\n");
  return 0;

}
  • 写回答

1条回答 默认 最新

  • qq_40157307 2018-12-23 08:13
    关注

    公式错了,x1=(-b+k)/2*a,x2=(-b-k)/2*a,还有那个k定义为int了,那么无论k算出来是不是整数,最后都会取整,定义为float试试

    评论

报告相同问题?

悬赏问题

  • ¥15 无线电能传输系统MATLAB仿真问题
  • ¥50 如何用脚本实现输入法的热键设置
  • ¥20 我想使用一些网络协议或者部分协议也行,主要想实现类似于traceroute的一定步长内的路由拓扑功能
  • ¥30 深度学习,前后端连接
  • ¥15 孟德尔随机化结果不一致
  • ¥15 apm2.8飞控罗盘bad health,加速度计校准失败
  • ¥15 求解O-S方程的特征值问题给出边界层布拉休斯平行流的中性曲线
  • ¥15 谁有desed数据集呀
  • ¥20 手写数字识别运行c仿真时,程序报错错误代码sim211-100
  • ¥15 关于#hadoop#的问题