个不超过 100 的正整数,表示每道判断题的正确答案,其中 1 表示正确, 表示错误。随后 n 行,每行给出一个学生的解答,其中 表示该生选择“错误”,1 表示该生选择“正确”,数字间以空格分隔。\n\n输出格式:\n按照输入的顺序输出每个学生的得分,每个分数占一行,输出小数点后 1 位。用C语言
时间: 2023-12-17 15:04:14 浏览: 103
以下是一个可能的实现:
```c
#include <stdio.h>
#define MAX_N 100
int main() {
int ans[MAX_N], res[MAX_N];
int n, m;
scanf("%d%d", &n, &m);
for (int i = 0; i < m; i++) {
scanf("%d", &ans[i]);
}
for (int i = 0; i < n; i++) {
int score = 0;
for (int j = 0; j < m; j++) {
scanf("%d", &res[j]);
if (res[j] == ans[j]) {
score++;
}
}
printf("%.1f\n", (float)score / m * 100);
}
return 0;
}
```
该程序首先读入正确答案和学生的答案,然后对每个学生的答案进行比较得到分数,最后输出分数。注意要将分数乘以 100 并除以总题数得到百分比,并将结果输出到小数点后一位。
阅读全文