PAT乙級 1058 選擇題

2021-09-26 05:39:10 字數 844 閱讀 9358

#include using namespace std;

struct q

;//對的選項設定為1

};bool cmp(q a,q b)//寫錯的人越多的題越靠前,若排序後最靠前的沒有乙個人錯則全對

int main()

;//學生得分

vectora(n_q);//題目

char t;

//輸入題目資訊

for(int i=0;i>a[i].full>>a[i].all>>a[i].right;

a[i].wrong=0;

a[i].num=i+1;

for(int j=0;j>t;

a[i].ans[t-'a']=1;}}

//處理學生答案

int n;

for(int i=0;i>t>>n;//吸收'(',輸入該題學生選了幾項

int cnt=0;

for(int k=0;k>t;

if(a[j].ans[t-'a']==1)

cnt++;

}if(cnt==a[j].right&&cnt==n)//防止學生多選中矇對正確答案

stu[i]+=a[j].full;

else

a[j].wrong++;

cin>>t;//t吸收')'}}

//輸出答案

for(int i=0;icout

if(a[0].wrong==0)

cout<<"too ******";

else

return 0;

}

Pat乙級 1058 選擇題

題目 注意下輸入的格式,用scanf處理。第1個測試點輸出too 前先輸出每個人的分數,然後輸出too 直接return 0。data二維陣列中,每一行最後乙個存那道題的分數,倒數第二個存正確選項的個數。include define max 1005 using namespace std int ...

PAT 乙級練習 1058 選擇題

本題鏈結 批改多選題是比較麻煩的事情,本題就請你寫個程式幫助老師批改多選題,並且指出哪道題錯的人最多。輸入格式 輸入在第一行給出兩個正整數 n 1000 和 m 100 分別是學生人數和多選題的個數。隨後 m 行,每行順次給出一道題的滿分值 不超過 5 的正整數 選項個數 不少於 2 且不超過 5 ...

PAT乙級 1058 選擇題 C語言

題目 批改多選題是比較麻煩的事情,本題就請你寫個程式幫助老師批改多選題,並且指出哪道題錯的人最多。輸入格式 輸入在第一行給出兩個正整數n 1000 和m 100 分別是學生人數和多選題的個數。隨後m行,每行順次給出一道題的滿分值 不超過5的正整數 選項個數 不少於2且不超過5的正整數 正確選項個數 ...