已知一个班级的应到与实到,并且已知以下规则班级内请假的人数不得超过班级总人数的20%,超出的请假人数每人/次扣0.5分;超过班级总人数50%超出的请假人数每人/次扣1分,求应扣几分。用c语言代码解决以上问题,并写入网页。并且生成网页
时间: 2023-12-10 14:40:24 浏览: 29
以下是用C语言编写的求应扣分数的代码:
```c
#include <stdio.h>
int main() {
int total, present, absent, max_absent;
float penalty = 0.0;
printf("请输入班级总人数:");
scanf("%d", &total);
printf("请输入实到人数:");
scanf("%d", &present);
absent = total - present;
max_absent = total * 0.2;
if (absent > max_absent && absent <= total * 0.5) {
penalty = (absent - max_absent) * 0.5;
} else if (absent > total * 0.5) {
penalty = (absent - total * 0.5) * 1.0 + (total * 0.5 - max_absent) * 0.5;
}
printf("应扣分数为:%.1f分\n", penalty);
return 0;
}
```
将上述代码保存为文件并编译运行即可得到结果。同时,我们可以将代码嵌入到HTML页面中,使其可以在网页上运行。以下是一个示例网页:
```html
<!DOCTYPE html>
<html>
<head>
<title>应扣分数计算器</title>
<meta charset="UTF-8">
</head>
<body>
<h1>应扣分数计算器</h1>
<form>
<label for="total">班级总人数:</label>
<input type="number" id="total" name="total"><br><br>
<label for="present">实到人数:</label>
<input type="number" id="present" name="present"><br><br>
<button type="button" onclick="calculate()">计算应扣分数</button>
</form>
<br>
<p id="result"></p>
<script>
function calculate() {
var total = parseInt(document.getElementById("total").value);
var present = parseInt(document.getElementById("present").value);
var absent = total - present;
var max_absent = Math.round(total * 0.2);
var penalty = 0;
if (absent > max_absent && absent <= total * 0.5) {
penalty = (absent - max_absent) * 0.5;
} else if (absent > total * 0.5) {
penalty = (absent - total * 0.5) * 1.0 + (total * 0.5 - max_absent) * 0.5;
}
document.getElementById("result").innerHTML = "应扣分数为:" + penalty.toFixed(1) + "分";
}
</script>
</body>
</html>
```
在浏览器中打开该网页,输入班级总人数和实到人数,点击“计算应扣分数”按钮即可得到应扣分数的计算结果。