PAT乙 1073 多選題常見計分法

2021-08-19 03:45:31 字數 713 閱讀 7112

易錯分析:漏選和錯選都算錯,不要忽略任意一種

求解過程:本文用set的count方法來確定學生的輸入選項是否在正確答案中,用迭代器遍歷正確答案,在用count方法來確定是否有選項漏掉。把這些錯誤的選項都存在乙個陣列wrongmat中,最後通過遍歷的wrongmat來輸出錯誤的選項結果。

程式:

#include #include #include #include using namespace std;

struct q

;int main(int argc, char const *argv)

} getchar(); // 擋掉回車

for (int i = 0; i < n; i++)

}for (it = q[j].s.begin(); it != q[j].s.end(); it++)

}scanf(")");

getchar(); // 吃掉空格

if (!flag) // 如果不存在錯選情況

}} printf("%0.1lf\n", sum);

} if (!allright) // 如果沒人犯錯

printf("too ******\n");

else

return 0;

}

PAT 1073 多選題常見計分法

描述 批改多選題是比較麻煩的事情,有很多不同的計分方法。有一種最常見的計分方法是 如果考生 選擇了部分正確選項,並且沒有選擇任何錯誤選項,則得到50 分數 如果考生選擇了任何乙個錯 誤的選項,則不能得分。本題就請你寫個程式幫助老師批改多選題,並且指出哪道題的哪個選項 錯的人最多。輸入 輸入在第一行給...

PAT乙級 1073 多選題常見計分法

批改多選題是比較麻煩的事情,有很多不同的計分方法。有一種最常見的計分方法是 如果考生選擇了部分正確選項,並且沒有選擇任何錯誤選項,則得到 50 分數 如果考生選擇了任何乙個錯誤的選項,則不能得分。本題就請你寫個程式幫助老師批改多選題,並且指出哪道題的哪個選項錯的人最多。輸入在第一行給出兩個正整數 n...

1073 多選題常見計分法

批改多選題是比較麻煩的事情,有很多不同的計分方法。有一種最常見的計分方法是 如果考生選擇了部分正確選項,並且沒有選擇任何錯誤選項,則得到50 分數 如果考生選擇了任何乙個錯誤的選項,則不能得分。本題就請你寫個程式幫助老師批改多選題,並且指出哪道題的哪個選項錯的人最多。輸入格式 輸入在第一行給出兩個正...