需求说明:
某软件公司要求对技术部门的所有员工进行技能评测,技术评测分为两个部分:理论部分以及实操部分,最终评测成绩=理论成绩×0.4+实操成绩×0.6,要求输入技术部门5位员工的理论成绩和实操成绩,计算并输出各位员工的最终评测成绩。
实现思路:
定义三个数组writenExam、labExam和scores,分别用于存储员工理论成绩、实操成绩和最终评测成绩。
由于每个员工存在三个属性:理论成绩、实操成绩以及最终评测成绩,而三个属性对应的数据存储在三个数组中,所以三个数组中同一下标处的数据用于描述同一个员工。例如,第三位员工的理论成绩:writenExam[2],实操成绩:labExam[2],最终评测成绩:score[2]。
使用循环依次接收用户输入的理论成绩和实操成绩,将数据存储在数组writenExam和labExam中。
使用循环依次计算每位员工的最终评测成绩,将数据存储在数组scores中。
使用循环结构输出每位员工的最终评测成绩。
实现代码:
import java.util.Scanner; public class ExamDemo { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int[] writenExan = new int[5];//储存理论成绩 int[] labExam = new int[5];//储存实操成绩 double[] scores = new double[5];//储存最终成绩 //接收用户输入的理论和实操成绩 for (int i = 0; i < writenExan.length; i++) { System.out.printf("请输入第%d位员工成绩",i+1); System.out.println("理论成绩:"); writenExan[i] = sc.nextInt(); System.out.println("实操成绩:"); labExam[i] = sc.nextInt(); } //计算员工最终评测成绩 for (int i = 0; i < scores.length; i++) { scores[i] = writenExan[i]*0.4 + labExam[i]*0.6; } //显示最终评测成绩 System.out.println("最终测评成绩:"); for (double item : scores) { System.out.println("item"); } } }