yidaishangxia
2015-09-23 11:20
采纳率: 50%
浏览 2.2k
已采纳

java.util.Scanner输入问题

刚学java,老师布置了作业让求一元二次方程的根,直接在txt中编的,然后再cmd运行。编了一个程序编译通过了,但是输了三个数结果出不来,求教!我怀疑是不能这么输入端、三个数字。
程序如下:
//求一元二次方程的根
import java.util.Scanner;
public class Text3
{
public static void main(String[] args)
{
Scanner input=new Scanner(System.in);
double a=0,b=0,c=0,x1=0,x2=0;
System.out.print("请输入a,b,c");
a=input.nextDouble();
b=input.nextDouble();
c=input.nextDouble();
x1=(-b+Math.sqrt(b*b-4*a*c))/(2*a);
x2=(-b-Math.sqrt(b*b-4*a*c))/(2*a);
System.out.printf("x1=%lf,x2=%lf",x1,x2);
}
}

  • 写回答
  • 好问题 提建议
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • xiedacon 2015-09-23 11:40
    已采纳

    System.out.printf("x1=%lf,x2=%lf",x1,x2);
    这句打错了,是 1f 不是 lf

    还有使用 a b c 之前最好先检查一下他们的值,是不是合理

    已采纳该答案
    评论
    解决 无用
    打赏 举报
  • 水煮鱼摆摆丶 2015-09-23 12:16

    a=input.nextDouble();这种要求控制台输入的是不能有空格的,你的数据就是简单的数字,建议把输入类型改成,a=input.nextLine;或者a=input.next();
    这种输入是以换行或者Enter作为结尾的。

    评论
    解决 无用
    打赏 举报

相关推荐 更多相似问题