【问题标题】:calculating average of grades in php用php计算平均成绩
【发布时间】:2015-04-30 13:26:42
【问题描述】:

我正在尝试在 php 中查找学生的平均成绩。我使用表格询问用户有多少学生,然后让他们输入每个学生的成绩。然后显示平均值。我的代码在下面,我可以让它工作。下面是它应该是什么样子(让您了解我想要做什么)。我认为我错误地使用了表格,但我不明白为什么?

Enter the number of students: 3
Enter grade 1: 55
Enter grade 2: 108
Invalid grade, try again
Enter grade 2: 56
Enter grade 3: 57
the average is 56.0


<?php
//GRADES AVERAGE

$sum = 0;
$average = 0;
$students = $_POST['numStudents'];
$grade = $_POST['grade'];

for($i=1; $i>$students; $i++){
if($grade <0 || $grade > 0){
    echo "invalid grade, try again";
}

$sum = $sum + $grade;
$average = $sum/$i;
}
echo "the average is = $average";
?>

<form action="task19.php" method="POST">
Enter the number of students<input type="number" name="numStudents" />
<input type="submit" value="Enter" />
</form>

<form action="task19.php" method="POST">
Enter the grade for student <?php $i ?> <input type="number" name="grade" />
<input type="submit" value="Enter grade" />
</form>

【问题讨论】:

  • 这是练习代码吗?我建议你自己解决这个问题,最终会很充实,相信我,无论如何,你也应该研究一下数组,在那里管理这些值要容易得多
  • 为什么你打开两个表单而不是继续处理两个输入?

标签: php average


【解决方案1】:

首先,使用1个表单结合两个输入,如果您发送一个表单,则不会发送另一个表单。二、看下面的代码:

if($grade <0 || $grade > 0){
    echo "invalid grade, try again";
}

这有点奇怪:) 我认为你应该删除它或更准确的表达。它的等级将始终小于 0 或大于 0。

【讨论】:

    猜你喜欢
    • 2019-08-25
    • 2015-05-31
    • 2014-11-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多