用于存放学校的作业便于复习。
Você não pode selecionar mais de 25 tópicos Os tópicos devem começar com uma letra ou um número, podem incluir traços ('-') e podem ter até 35 caracteres.
 
 
 
 

40 linhas
1.0 KiB

const readline = require("readline");
const rl = readline.createInterface(
process.stdin, process.stdout
);
let student_num = 10;
let grades = new Array(student_num); // 类似于C/C++中数组的数据结构,空间复杂度O(n)
function input(remain_times) {
if (remain_times <= 0) {
rl.close();
return;
}
rl.question("", (answer) => {
grades[student_num - remain_times] = parseFloat(answer); // 暂时不考虑输入错误
input(remain_times - 1);
});
}
rl.on("close", () => {
let sum = grades.reduce((sum, current) => {
return sum + current;
}, 0); // 时间复杂度O(n)
let average = sum / student_num;
console.log("高于平均分的学生成绩为:", grades.filter((grade) => grade > average)); // 时间复杂度O(n)
});
rl.write("输入"+student_num+"名学生的成绩,一个一行:\n");
input(student_num);
// 输入10名学生的成绩,一个一行:
// 1
// 2
// 3
// 4
// 5
// 6
// 7
// 8
// 9
// 10
// 高于平均分的学生成绩为: [ 6, 7, 8, 9, 10 ]