1061. 判断题(15)

#include <cstdio>
int main(){
    int N, M, grade[105], student[105], answer[105];
    scanf("%d%d", &N, &M);
    for(int i = 0; i < M; i++)
        scanf("%d", &grade[i]);
    for(int i = 0; i < M; i++)
        scanf("%d", &answer[i]);
    int result = 0;
    int istrue = 0;         
    for(int i = 0; i < N; i++){     //N个学生
        for(int j = 0; j < M; j++){ //将他们的答案与标准答案进行比较
            scanf("%d", &student[j]);
            if(answer[j] == student[j])  istrue = 1;
            else istrue = 0;
            result = result + grade[j] * istrue;
        }
        printf("%d\n", result);     //输出每个人的分数
        result = 0;                 //重置result统计下一个学生
    }
    return 0;
}
### 回答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编写的代码:
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值