Java编程实现:计算三个整数A、B、C的平均值
修正后的Java程序:计算三个整数的平均值
原代码存在运算优先级错误:Java中除法/的优先级高于加法+,表达式a + b + c / 3会先计算c / 3,再与a、b相加,完全不符合“总和除以3”的计算逻辑。
修复后的基础版本(整数结果)
import java.util.Scanner; public class JavaBasics { public static void main(String args[]) { Scanner sc = new Scanner(System.in); int a = sc.nextInt(); int b = sc.nextInt(); int c = sc.nextInt(); // 用括号确保先计算总和,再执行除法 int avg = (a + b + c) / 3; System.out.println(avg); } }
优化版本(保留小数精度)
如果需要输出带小数的平均值(比如输入1、2、4时,实际平均值约为2.333),可将平均值类型改为double,通过强制类型转换避免整数除法的精度丢失:
import java.util.Scanner; public class JavaBasics { public static void main(String args[]) { Scanner sc = new Scanner(System.in); int a = sc.nextInt(); int b = sc.nextInt(); int c = sc.nextInt(); // 将总和强制转为double后再除以3,保留小数部分 double avg = (double)(a + b + c) / 3; System.out.println(avg); } }
内容的提问来源于stack exchange,提问作者PUNIT SONI
相关产品推荐
相关产品推荐

