HDU 2030 漢字統計

2021-07-04 05:00:10 字數 724 閱讀 6720

description

統計給定文字檔案中漢字的個數。

input

輸入檔案首先包含乙個整數n,表示測試例項的個數,然後是n段文字。

output

對於每一段文字,輸出其中的漢字的個數,每個測試例項的輸出佔一行。 

[hint:]從漢字機內碼的特點考慮~ 

sample input

2

wahaha! wahaha! 今年過節不說話要說只說普通話wahaha! wahaha!

馬上就要期末考試了are you ready?

sample output

14

9

#include #define n 1000

char a[n];

int main()

return 0;

}

ascii 字元占用乙個位元組(使用低7位),最高位為0,另外,漢字機內碼在計算機的表達方式的描述是,使用二個位元組,每個位元組最高位一位為1。計算機中, 補碼第一位是符號位, 1 表示為 負數, 所以 漢字機內碼的每個位元組表示的十進位制數都是負數,結果要除以2,不要忘了。因為漢字占用兩個位元組。進行按位與運算後,是英文本元返回0,是中文漢字則返回128.還可以通過判斷他的每乙個位元組是否小於零(因為最高位為符號位),小於0則是中文漢字,否則反。

HDU 2030漢字統計

機內碼 為了避免ascii碼和國標碼同時使用時產生二義性問題,大部分漢字系統都採用將國標碼每個位元組高位置1作為漢字機內碼。也就是說,乙個漢字字元由兩個位元組組成,而且這兩個位元組的最高位一定是1.那麼輸入的時候只getchar 這樣只能一半一半的輸入,也就是乙個漢字分兩次輸入。而每次輸入的值的首位...

HDU 2030 漢字統計

problem description 統計給定文字檔案中漢字的個數。input 輸入檔案首先包含乙個整數n,表示測試例項的個數,然後是n段文字。output 對於每一段文字,輸出其中的漢字的個數,每個測試例項的輸出佔一行。hint 從漢字機內碼的特點考慮 sample input 2wahaha ...

HDU 2030 漢字統計

time limit 1000 ms memory limit 32768 kb 統計給定文字檔案中漢字的個數。input 輸入檔案首先包含乙個整數n,表示測試例項的個數,然後是n段文字。output 對於每一段文字,輸出其中的漢字的個數,每個測試例項的輸出佔一行。sample input 2 wa...