测试说明
- 本测试包含5道编程题,涵盖本周所有知识点
- 请在IDE中完成代码后,将答案粘贴到对应区域
- 每题都有示例输入输出,请严格按照要求实现
- 完成后点击"提交答案"按钮查看评分
题目1:数组反转与统计(20分)
简单要求:编写方法实现数组反转,并统计正数和负数的个数
// 方法签名
public static ArrayResult reverseAndCount(int[] arr)
示例:
输入: [3, -1, 5, -7, 9, 0]
输出: 反转数组 [0, 9, -7, 5, -1, 3], 正数: 4个, 负数: 2个, 零: 1个
你的答案:
// 在此编写你的代码
public static ArrayResult reverseAndCount(int[] arr) {
// TODO: 实现数组反转和统计
}
得分: --/20
题目2:矩阵运算(20分)
中等要求:创建3×3矩阵,计算对角线元素之和,并找出最大值
// 方法签名
public static MatrixInfo analyzeMatrix(int[][] matrix)
示例:
输入矩阵:
[1, 2, 3]
[4, 5, 6]
[7, 8, 9]
输出: 主对角线之和: 15, 副对角线之和: 15, 最大值: 9
你的答案:
public static MatrixInfo analyzeMatrix(int[][] matrix) {
// TODO: 实现矩阵分析
}
得分: --/20
题目3:计算器方法重载(20分)
简单要求:使用方法重载实现不同类型参数的计算器
// 需要实现的方法
public static double add(int a, int b) // 整数相加
public static double add(double a, double b) // 小数相加
public static double add(int... numbers) // 可变参数相加
测试用例:
add(3, 5) → 8.0
add(2.5, 3.7) → 6.2
add(1, 2, 3, 4, 5) → 15.0
你的答案:
// 实现三个重载的add方法
public static double add(int a, int b) {
return a + b;
}
// TODO: 实现其他两个重载方法
得分: --/20
题目4:递归求和与阶乘(20分)
中等要求:使用递归实现1到n的和以及n的阶乘
// 需要实现的方法
public static int recursiveSum(int n) // 1+2+...+n
public static long recursiveFactorial(int n) // n!
测试用例:
recursiveSum(5) → 15
recursiveFactorial(5) → 120
recursiveSum(1) → 1
recursiveFactorial(0) → 1
你的答案:
public static int recursiveSum(int n) {
// TODO: 实现递归求和
}
public static long recursiveFactorial(int n) {
// TODO: 实现递归阶乘
}
得分: --/20
题目5:学生成绩管理(20分)
困难要求:综合使用数组、方法和Arrays工具类实现完整功能
// 功能要求
1. 存储5个学生的姓名和3门课成绩
2. 计算每个学生的平均分
3. 找出最高分学生
4. 使用Arrays.sort排序平均分
5. 递归实现成绩统计
数据结构:
String[] names = {"张三", "李四", "王五", "赵六", "钱七"};
double[][] scores = {{85, 90, 78}, {92, 88, 95}, {75, 82, 80}, {98, 94, 96}, {65, 70, 72}};
你的完整实现:
public class StudentManager {
public static void main(String[] args) {
// TODO: 实现完整的学生成绩管理功能
}
// TODO: 添加所需的其他方法
}
得分: --/20
测试完成与评分
0/100