个不超过 100 的正整数,表示每道判断题的正确答案,其中 1 表示正确, 表示错误。随后 n 行,每行给出一个学生的解答,其中 表示该生选择“错误”,1 表示该生选择“正确”,数字间以空格分隔。\n\n输出格式:\n按照输入的顺序输出每个学生的得分,每个分数占一行,输出小数点后 1 位。
时间: 2023-12-17 18:04:14 浏览: 199
输入一个正整数,判断是不是素数(C++)
这道题目涉及到数学计算和字符串处理,需要将输入的字符串转化为数字进行计算,同时输出结果时需要格式化输出保留小数点后一位。下面是一份 Python 的代码示例:
```python
# 读入正确答案
answers = input().split()
# 读入学生答案并计算得分
while True:
try:
line = input().split()
score = 0
for i in range(len(answers)):
if answers[i] == line[i]:
score += 1
print("{:.1f}".format(score / len(answers) * 100)) # 输出得分,保留一位小数
except:
break
```
其中,`input()` 用于读入用户输入的字符串,`split()` 方法用于将字符串按照空格分割成一个列表。在计算得分时,我们使用一个变量 `score` 来记录正确答案的个数,然后将其除以总题目数再乘以 100 即可得到百分比分数。在输出时,我们使用了 `format()` 方法来格式化输出字符串,保留一位小数。
阅读全文