原创 PAT乙級|C語言|1024 科學計數法 (20分)

題目 科學計數法是科學家用來表示很大或很小的數字的一種方便的方法,其滿足正則表達式 [±][1-9].[0-9]+E[±][0-9]+,即數字的整數部分只有 1 位,小數部分至少有 1 位,該數字及其指數部分的正負號即使對正數也必

原创 PAT乙級2019年冬仿真卷(C語言)

PAT乙級冬仿真卷(C語言)解析 十天前晚上看到PAT乙級考試的時間又延期了,就萌生了線上測試的想法。充值了十元大錢,進行了線上測試。 測試結果說來慚愧,20分鐘AC了前三道題,第四道題格式錯誤,乍一看沒有發現格式上的問題,就

原创 PAT乙級|C語言|1025 反轉鏈表 (25分)

題目 給定一個常數 K 以及一個單鏈表 L,請編寫程序將 L 中每 K 個結點反轉。例如:給定 L 爲 1→2→3→4→5→6,K 爲 3,則輸出應該爲 3→2→1→6→5→4;如果 K 爲 4,則輸出應該爲 4→3→2→1→5→

原创 PAT乙級|C語言|1021 個位數統計 (15分)

題目 編寫程序統計每種不同的個位數字出現的次數。例如:給定 N=100311,則有 2 個 0,3 個 1,和 1 個 3。 輸入格式: 每個輸入包含 1 個測試用例,即一個不超過 1000 位的正整數 N。 輸出格式: 對 N

原创 PAT乙級|C語言|1022 D進制的A+B (20分)

題目 輸入兩個非負 10 進制整數 A 和 B (≤230−1)(≤2^{30}-1)(≤230−1),輸出 A+B 的 D (1<D≤10)進制數。 輸入格式: 輸入在一行中依次給出 3 個整數 A、B 和 D。 輸出格式: 輸

原创 PAT乙級|C語言|1023 組個最小數 (20分)

題目 給定數字 0-9 各若干個。你可以以任意順序排列這些數字,但必須全部使用。目標是使得最後得到的數儘可能小(注意 0 不能做首位)。例如:給定兩個 0,兩個 1,三個 5,一個 8,我們得到的最小的數就是 10015558。

原创 PAT乙級|C語言|1013 數素數 (20分)

題目 令PiP_iPi​表示第 i 個素數。現任給兩個正整數M⩽N⩽104M{\leqslant}N\leqslant10^4M⩽N⩽104,請輸出PMP_MPM​到PNP_NPN​的所有素數。 輸入格式: 輸入在一行中給出 M

原创 PAT乙級|C語言|1011 A+B 和 C (15分)

題目 給定區間[−231,231][-2^{31},2^{31}][−231,231]內的 3 個整數 A、B 和 C,請判斷 A+B 是否大於 C。 輸入格式: 輸入第 1 行給出正整數 T (≤10),是測試用例的個數。隨後給

原创 C語言控制檯小遊戲 | 打飛機

開飛機打飛機 極度簡陋版,做着玩 /20.3.27/ 基本描述 玩家控制一架飛機,用 * 表示; 敵機只有一架,隨機位置飛來,用 @ 表示; 子彈能發一顆 ,用 | 表示;//暫且叫做子彈吧,要不然叫導彈?感覺叫啥都行 子彈

原创 PAT乙級|C語言|1008 數組元素循環右移問題 (20分)

題目 一個數組A中存有N(>0)個整數,在不允許使用另外數組的前提下,將每個整數循環向右移M(≥0)個位置。如果需要考慮程序移動數據的次數儘量少,要如何設計移動的方法? 輸入格式: 每個輸入包含一個測試用例,第1行輸入N(1≤N≤

原创 PAT乙級|C語言|1009 說反話 (20分)

題目 給定一句英語,要求你編寫程序,將句中所有單詞的順序顛倒輸出。 輸入格式: 測試輸入包含一個測試用例,在一行內給出總長度不超過 80 的字符串。字符串由若干單詞和若干空格組成,其中單詞是由英文字母(大小寫有區分)組成的字符串,

原创 PAT乙級|C語言|1007 素數對猜想 (20分)

題目 “素數對猜想”認爲“存在無窮多對相鄰且差爲2的素數”。 現給定任意正整數N(<10​510​^510​5),請計算不超過N的滿足猜想的素數對的個數。 輸入格式: 輸入在一行給出正整數N。 輸出格式: 在一行中輸出不超過N的滿

原创 PAT乙級|C語言|1003 我要通過! (20分)

題目 “答案正確”是自動判題系統給出的最令人歡喜的回覆。本題屬於 PAT 的“答案正確”大派送 —— 只要讀入的字符串滿足下列條件,系統就輸出“答案正確”,否則輸出“答案錯誤”。 得到“答案正確”的條件是: 字符串中必須僅有 P

原创 PAT乙級|C語言|1002 寫出這個數 (20分)

題目 讀入一個正整數 n,計算其各位數字之和,用漢語拼音寫出和的每一位數字。 輸入格式: 每個測試輸入包含 1 個測試用例,即給出自然數 n 的值。這裏保證 n 小於 1010010^{100}10100​。 輸出格式: 在一行內

原创 PAT乙級|C語言|1001 害死人不償命的(3n+1)猜想 (15分)

題目 卡拉茲(Callatz)猜想: 對任何一個正整數 n,如果它是偶數,那麼把它砍掉一半;如果它是奇數,那麼把 (3n+1) 砍掉一半。這樣一直反覆砍下去,最後一定在某一步得到 n=1。卡拉茲在 1950 年的世界數學家大會上公