我试图在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>
答案 0 :(得分:0)
首先,使用1个表单组合两个输入,如果发送一个表单,则不会发送另一个表单。其次,看看下面的代码:
if($grade <0 || $grade > 0){
echo "invalid grade, try again";
}
这有点奇怪:)我认为你应该删除它或做一个更准确的表达。等级将始终小于0或大于0.