问答详情
源自:3-2 Java中的算术运算符

这里边的int avg=(age1+age2+age3+age4)/4;为什么不能直接写为int avg=sum/4;???

public class HelloWorld{

    public static void main(String[] args) {

int age1=24;

int age2=18;

int age3=36;

int age4=27;

int sum=age1+age2+age3+age4;

int avg=(age1+age2+age3+age4)/4;

int minus=age1-age2;

int newAge=--age1;

    System.out.println("年龄总和:"+sum);

    System.out.println("平均年龄:"+avg);

System.out.println("年龄差值:"+minus);

System.out.println("自减后的年龄:"+newAge);


}

}


提问者:慕先生2416051 2020-11-03 14:32

个回答

  • StudentBird
    2020-12-23 08:54:29

    double avg=(double )sum/4; 输出后的结果是有小数的。他这里题目要求的是没有小数。 故此可以肯定。是先运算sum/4.然后在强转。答案就是double avg=(double)(sum/4)


  • 慕码人8449555
    2020-12-19 07:00:08

    double avg=sum/4;

  • 湮灭潮汐
    2020-11-04 10:58:23

    因为他要求的结果是26.0,是小数,int只是整数,用double可以得出

  • Han_zhihua
    2020-11-03 15:56:11

    和除以4不一定就是整数,前边应该改为double,