模擬題。
直接從教程里拉解析。
因為**裡的資料格式不統一。有時候有"()",有時候又沒有。而它也不會給我們提示。
這種情況下,就只能它它們統一看作字串來處理了。現在就請出我們的主角sscanf()!
sscanf
語法:
#include int sscanf( const char *buffer, const char *format, ... );
函式sscanf()和scanf()類似, 只是輸入從buffer(緩衝區)中讀取.
比如:sscanf("1 2 3", "%d%d%d", &a, &b, &c);
則a = 1, b = 2, c = 3;
只要輸入**內容後,用格式化輸入"%d(%d)",然後判斷輸入結果,如果是2,表示帶有括號,如果是1,則沒有括號。
排序直接用快速排序就可以了。規則已經說的很清楚了。
**:
#include#include#includeusing namespace std;
const int maxn = 1000;
struct student
*/} stu[maxn];
/*int cmp(const void *va, const void *vb)
*/int cmp(const void *a, const void *b)
int main()
else if(res == 1 && t > 0)}}
qsort(stu, i, sizeof(student), cmp);
for(i--; i >= 0; i--)
printf("%-10s %2d %4d\n", stu[i].name, stu[i].total, stu[i].sum);
return 0;
}
HDU 2093 考試排名
problem description c 程式設計考試使用的實時提交系統,具有即時獲得成績排名的特點。它的功能是怎麼實現的呢?我們做好了題目的解答,提交之後,要麼 ac 要麼錯誤,不管怎樣錯法,總是給你記上一筆,表明你曾經有過一次錯誤提交,因而當你一旦提交該題 ac 後,就要與你算一算帳了,總共該...
hdu2093 考試排名
排序水題,但是我還是wa了好幾次,原因是name相同時的排名結果出現了問題,建議用strng處理name輸入 include using namespace std struct guy a 1000 bool cmp guy a,guy b else if a.score b.score else...
hdu 2093 考試排名
problem description c 程式設計考試使用的實時提交系統,具有即時獲得成績排名的特點。它的功能是怎麼實現的呢?我們做好了題目的解答,提交之後,要麼 ac 要麼錯誤,不管怎樣錯法,總是給你記上一筆,表明你曾經有過一次錯誤提交,因而當你一旦提交該題 ac 後,就要與你算一算帳了,總共該...