我几乎不好意思问这个。
我是一个初学者程序员,Javascript 让我很困惑。在我的导师的帮助下,我设法完成了这么多,但有些简单的事情我做不到。
我尝试在 Stack Overflow 上搜索一个可以回答我的问题的线程,但我看到的所有这些都包含我尚未了解的代码,所以它们对我来说都是胡言乱语。
我要做的是添加一个数组的所有值,然后将总和除以数组的长度,ergo,找到平均值。作业的描述是求任意数量学生成绩的平均值。
我的两个问题是
- 我不知道如何获得数组中所有数值的总和,
- 出于某种原因,array.length 返回的比数组的实际长度多一,即使我添加了 -1。(例如,如果我输入 6 个值,array.length 将返回 7。)
我知道问题出在哪里,但我不知道我需要输入什么。这项任务明天到期,因此感谢任何人的时间和精力。
这是我的脚本:
<script type="text/javascript">
var allGrades = new Array();
var g = 0;
var l = 0;
var s = 0;
var t = 0;
do {
allGrades[g] = window.prompt("Please enter one grade for each window. After you enter a grade, enter an 'x' to see the average of the grades you entered.", "")
g++;
}
while (allGrades[g - 1] != "x")
for (l = 0; l < allGrades.length - 1; l++) {
s += allGrades[l] // Where I think the problem is
}
t == s / g - 1;
g == allGrades.length - 1; //
window.alert(g)
switch (t) {
case (t >= 90):
window.alert("Your average grade is " + (t) + ". " + "This is an A.")
break;
case (t >= 80 && t < 90):
window.alert("Your average grade is " + (t) + ". " + "This is a B.")
break;
case (t >= 70 && t < 80):
window.alert("Your average grade is " + (t) + ". " + "This is a C.")
break;
case (t >= 60 && t < 70):
window.alert("Your average grade is " + (t) + ". " + "This is a D.")
break;
case (t <= 60):
window.alert("Your average grade is " + (t) + ". " + "This is a failing grade.")
break;
}
</script>
如果我问的问题看起来很愚蠢,我很抱歉。我只做了大约两个月的网络编程,所以我真的需要一些帮助!
凯尔