牛客網計算機考研複試 KY9 成績排序

2022-05-26 16:42:09 字數 530 閱讀 5058

點這裡題目描述:

用一維陣列儲存學號和成績,然後,按成績排序輸出。

思路:

對結構體排序就行了。

這裡自己第一遍寫的犯了乙個錯,對把學號id定義為了string型別,在排序的時候導致了錯誤,因為字串比較的時候是從左到右按照ascii碼比較,當比較"13"和"9"的時候,反而"9">"13",所以如果題目裡的學生id長度相同的時候,定義成string比較也可以,如果不同,則需要用int。

另外「asdf」<「asdfer」,因為字串結尾多餘的乙個位元組用來儲存乙個空位元組,也就是ascii等於0的字元『\0』,用於表示字串的結尾,在比較第4字元時,『e』的ascii大於0,故第二個字串大。

**:

#include using namespace std;

struct students[102];

bool cmp(student a,student b)

牛客網計算機考研複試 KY30 進製轉換

點這裡題目描述 將乙個長度最多為30位數字的十進位製非負整數轉換為二進位制數輸出。思路 模擬十進位制轉為二進位制的過程,用string儲存該數,遍歷這個string,每次保留模2的數,然後除2就行。如十進位制123 十進位制 除二 模二 123 61 1 061 30 1 030 15 0 015 ...

牛客網計算機考研複試 KY8 整數拆分

點這裡題目描述 乙個整數總可以拆分為2的冪的和,例如 7 1 2 4 7 1 2 2 2 7 1 1 1 4 7 1 1 1 2 2 7 1 1 1 1 1 2 7 1 1 1 1 1 1 1 總共有六種不同的拆分方式。再比如 4可以拆分成 4 4,4 1 1 1 1,4 2 2,4 1 1 2。用...

牛客網計算機考研複試 KY3 約數的個數

點這裡題目描述 輸入n個整數,依次輸出每個數的約數的個數 思路1 對每乙個數計算其公約數,遍歷1到sqrt n 之間的數。1 include using namespace std int main cout cnt endl return 0 思路2 當n非常大的時候,第一種方法顯然會超時,這時我...