判断题的评判很简单,本题就要求你写个简单的程序帮助老师判题并统计学生们判断题的得分。 输入格式: 输入在第一行给出两个不超过 100 的正整数 n 和 m,分别是学生人数和判断题数量。第二行给出 m 个不超过 5 的正整数,是每道题的满分值。第三行给出每道题对应的正确答案,0 代表“非”,1 代表“是”。随后 n 行,每行给出一个学生的解答。数字间均以空格分隔。
时间: 2023-05-04 12:00:19 浏览: 72
题目的评判很简单,本题就要求你写个简单的程序帮助老师判题并统计学生们判题的得分。输入格式:输入在第一行给出两个不超过100的正整数N和M,其中N是提交的代码数,M是参加评测的人数。第二行给出M个不超过5的正整数,是每个参赛者的得分单。第三行给出N个长度不超过50的以回车结束的字符串,即每个参赛者所交的代码,题目保证每个字符串都是合法的C语言代码,且不超过300个字符。输出格式:按照输入给出的得分单,输出每个参赛者最终得到的得分。每个得分占一行,输出按照字母序排列的参赛者名单,其格式为“NAME SCORE”,其中NAME是参赛者名字,是由小写英文字母、数字、下划线“_”、连字符“-”组成的非空字符串,不超过10个字符;SCORE是参赛者得分,保留一位小数。如果某个参赛者没有参加评测,则输出“-1”。随后输出总得分前三名的名单和分数,格式为“BEST NAME SCORE”,其中NAME和SCORE分别是相应参赛者的名字和得分,按照得分降序排序,且分数保留一位小数。如果某个参赛者并列第一,则按照他们输入的先后顺序输出。
相关问题
判断题的评判很简单,本题就要求你写个简单的程序帮助老师判题并统计学生们判断题的得分。\n\n输入格式:\n输入在第一行给出两个不超过 100 的正整数 n 和 m,分别是学生人数和判断题数量。第二行给出 m
### 回答1:
个不超过 100 的正整数,表示每道判断题的正确答案,其中 1 表示正确, 表示错误。随后 n 行,每行给出一个学生的解答,其中 表示该生选择“错误”,1 表示该生选择“正确”,数字间以空格分隔。\n\n输出格式:\n按照输入的顺序输出每个学生的得分,每个分数占一行,输出小数点后 1 位。
### 回答2:
题的答案,其每个字符用空格分开,'T'表示正确,'F'表示错误。\n接下来n行,每行给出一个学生的解答,其每个字符也用空格分开,'T'表示正确,'F'表示错误。\n输出格式:\n在一行中输出学生们的得分,其间用空格分隔,最后一个答案后也要有空格。注意判断题的满分是m分。\n输入样例:\n4 5\nT F T T F\nT F T F F\nT T F T F\nT F T F F\n输出样例:\n3 2 2 2 '
题目应该是要求我们编写一个程序,用于自动批阅判断题并生成每个学生的得分统计表。具体步骤如下:
1. 读入 n 和 m,表示学生人数和判断题数量;
2. 读入 m 个字符,表示判断题的答案;
3. 循环 n 次,每次读入一个字符串,并计算该学生的得分;
4. 把学生得分加入一个列表中;
5. 输出得分列表。
具体实现见下面的 Python 代码:
```
n, m = map(int, input().split()) # 读入 n 和 m
ans = input().split() # 读入答案
scores = [] # 初始化得分列表
for i in range(n):
line = input().split() # 读入一行学生答案
score = 0 # 初始化该学生的得分
for j in range(m):
if line[j] == ans[j]: # 判断答案是否正确
score += 1 # 如果正确,则加 1 分
scores.append(str(score)) # 把该学生的得分加入列表中(转成字符串)
print(' '.join(scores)) # 输出得分列表,用空格分隔
```
这个程序首先读入 n 和 m,然后读入 m 个字符,表示判断题的答案。接下来循环 n 次,每次读入一个字符串,并计算该学生的得分。得分的计算方法是,逐个比较学生答案和正确答案,如果相同则得分加 1。最后把每个学生的得分加入一个列表中,并输出得分列表。
注意,得分列表中的每个分数都要转成字符串形式。输出时,用 join 函数把得分列表中的所有元素用空格连接起来即可。
### 回答3:
题目的标准答案,其中 T 表示正确, F 表示错误。随后 n 行,每行给出一个学生的解答,格式为一个长度为 m 的字符串,其中第 i 个字符表示该学生对第 i 道判断题的解答,同样 T 表示正确, F 表示错误。\n\n输出格式:\n首先按照输入给出的题目顺序输出每道题的得分情况,即对于每道题,给出错误选项和正确选项的人数,格式为2个数字,中间用空格分开。然后按照学生输入的顺序输出每个学生的总分,格式为一个数字。\n\n输入样例:\n`
3 5\nTFFTTF\nTFTFTF\nTTFTTT\n\nFFFTT\nTFTFF\nTTFTT\n` \n输出样例:\n
1 2\n2 1\n3 0\n4 0\n5 2\n2\n1\n3\n` \n#### 题解 \n这道题还是比较容易的一道,应该是蓝桥杯里面的一道C语言或者Python中最短代码的题目之一(详见各个社区中的讨论)。\n 我们可以使用两个列表维护正确和错误的答案个数,也可以使用一个字典来存储,本人认为字典的方法最为优美。当然,代码风格和习惯不同,大佬们的代码是都是不一样的,还是需要结合自己的情况来编写程序。\n \n下面是本人用Python编写的代码:
我需要一个c语言程序评判学生等级(要求输入分数首先判断是否合法)
我可以帮助您解决您的编程问题。对于评判学生等级的问题,您可以编写一个C语言程序,该程序可以接受用户输入的分数,然后根据一定的标准来评判学生的等级。您需要检查用户输入的分数是否合法,如果合法,您可以将其进行评分,并输出学生的等级。
下面是一个简单的程序示例,用于评判学生等级:
#include <stdio.h>
int main() {
float score;
printf("请输入学生的分数:\n");
scanf("%f", &score);
if (score < 0 || score > 100) {
printf("输入的分数不合法,请重新输入!\n");
return 0;
}
if (score >= 90 && score <= 100) {
printf("该学生的等级为:A\n");
} else if (score >= 80 && score < 90) {
printf("该学生的等级为:B\n");
} else if (score >= 70 && score < 80) {
printf("该学生的等级为:C\n");
} else if (score >= 60 && score < 70) {
printf("该学生的等级为:D\n");
} else {
printf("该学生的等级为:E\n");
}
return 0;
}
希望这可以帮助您解决问题。如果您有任何其他编程相关的问题,请随时与我联系。