藍橋第三屆國賽真題03

2021-09-20 21:21:46 字數 1234 閱讀 4510

在很多軟體中,輸入拼音的首寫字母就可以快速定位到某個詞條。比如,在鐵路售票軟體中,輸入: 「bj」就可以定位到「北京」。怎樣在自己的軟體中實現這個功能呢?問題的關鍵在於:對每個漢字必須能計算出它的拼音首字母。

gb2312漢字編碼方式中,一級漢字的3755個是按照拼音順序排列的。我們可以利用這個特徵,對常用漢字求拼音首字母。

gb2312編碼方案對每個漢字採用兩個位元組表示。第乙個位元組為區號,第二個位元組為區中的偏移號。

為了能與已有的ascii編碼相容(中西文混排),區號和偏移編號都從0xa1開始。

我們只要找到拼音a,b,c,...x,y,z 每個字母所對應的gb2312編碼的第乙個漢字,

就可以定位所有一級漢字的拼音首字母了(不考慮多音字的情況)。下面這個表給出了前述資訊。

請你利用該錶編寫程式,求出常用漢字的拼音首字母。

a 啊 b0a1

b 芭 b0c5

c 擦 b2c1

d 搭 b4ee

e 蛾 b6ea

f 發 b7a2

g 噶 b8c1

h 哈 b9fe

j 擊 bbf7

k 喀 bfa6

l 垃 c0ac

m 媽 c2e8

n 拿 c4c3

o 哦 c5b6

p 啪 c5be

q 期 c6da

r 然 c8bb

s 撒 c8f6

t 塌 cbfa

w 挖 cdda

x 昔 cef4

y 壓 d1b9

z 匝 d4d1

【輸入、輸出格式要求】

使用者先輸入乙個整數n (n<100),表示接下來將有n行文字。接著輸入n行中文串(每個串不超過50個漢字)。

程式則輸出n行,每行內容為使用者輸入的對應行的漢字的拼音首字母。

字母間不留空格,全部使用大寫字母。

則程式輸出:

djakx

bjtamgc

rjds

思路:中文由兩個char組成,觀察 打表結果可得出規律,即可用所在區間判斷開頭字母

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

//int main();    // i,u,v開頭的沒有

char test(int x,int y)

}int main()

cout<}

return 0;

}

2012第三屆藍橋杯預賽題

1.微生物增殖 用每半分鐘作為乙個增長量 假設有兩種微生物 x 和 y x出生後每隔3分鐘 一次 數目加倍 y出生後每隔2分鐘 一次 數目加倍 乙個新出生的x,半分鐘之後吃掉1個y,並且,從此開始,每隔1分鐘吃1個y。現在已知有新出生的 x 10,y 89,求60分鐘後y的數目。如果x 10,y 9...

第三屆藍橋杯複試

第四題 奇怪的比賽 某電視台舉辦了低碳生活大獎賽。題目的計分規則相當奇怪 每位選手需要回答10個問題 其編號為1到10 越後面越有難度。答對的,當前分數翻倍 答錯了則扣掉與題號相同的分數 選手必須回答問題,不回答按錯誤處理 每位選手都有乙個起步的分數為10分。某獲勝選手最終得分剛好是100分,如果不...

藍橋杯第三屆題目

某電視台舉辦了低碳生活大獎賽。題目的計分規則相當奇怪 每位選手需要回答10個問題 其編號為1到10 越後面越有難度。答對的,當前分數翻倍 答錯了則扣掉與題號相同的分數 選手必須回答問題,不回答按錯誤處理 每位選手都有乙個起步的分數為10分。某獲勝選手最終得分剛好是100分,如果不讓你看比賽過程,你能...