int i=10;
int j=3;
System.out.println(i+ "+" +j+"="+(i+j)); //以int输出
System.out.println(i+ "-" +j+"="+(i-j)); //以int输出
System.out.println(i+ "*" +j+"="+(i*j)); //以int输出
System.out.println(i+ "/" +j+"="+(i/j)); //以int输出
System.out.println(i+ "%" +j+"="+(i%j)); //以int输出
System.out.println(i+ "/" +j+"="+(float)(i/j));   //以型float输出
System.out.println(i+ "/" +j+"="+(doubel)(i/j));  //以型double输出最后两行为什么输出3.0  而不是3.333333和3.3333333333333333呢?               

解决方案 »

  1.   

    i/j是int的,所以i/j=3,转换成float和double后,当然是3.0了
      

  2.   

    System.out.println(i+ "/" +j+"="+(float)(i/j)); //以型float输出
    System.out.println(i+ "/" +j+"="+(doubel)(i/j)); //以型double输出改为:System.out.println(i + "/" + j + "=" + ((float)i/j)); //以型float输出
    System.out.println(i + "/" + j + "=" + ((doubel)i/j)); //以型double输出
      

  3.   

    类型转换,要多多看看课本了,基础还是靠看Book积累的,基础薄弱编程起来要受到很大的牵累的……
      

  4.   

    i和j都是int型,上面的代码是先做int型的除法运算,之后将结果(3)转为float,或者double。所以结果为3.0。
      

  5.   

    建议对double型或者float型数字,如果要输出的话,采用DecimalFormat进行格式化一下,这样就能够按照自己需要的指定格式进行输出了。
      

  6.   

    3楼所说的方向是没错的,只是有点粗心,把double写成了doubel
      

  7.   


    把i或j改为float或double型,再进行运算就可以。
      

  8.   

    前说说得不完全正确如果把i或j改为float或double型,再进行运算就的话。。
    前面的加减乘要int型,不还得转吗?