青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

    在很多軟件中,輸入拼音的首寫字母就可以快速定位到某個詞條。比如,在鐵路售票軟件中,輸入: “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行,每行內容為用戶輸入的對應行的漢字的拼音首字母。

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

    例如:
    用戶輸入:
3
大家愛科學
北京天安門廣場
軟件大賽

    則程序輸出:
DJAKX
BJTAMGC
RJDS

 


結題思路:
C語言中的一個漢字占兩個字節(兩個char),我們只需把這兩個字節對應的int型數字算出來,然后到編碼表里去比較即可。計算該數字時要用到移位,與,或等位運算操作。
代碼如下:
#include<stdio.h>
#include
<string.h>
int N;
char str[200];
void pro(){
    
    
for(int i = 0; i < strlen(str) - 1; )
    
{
        
char c0 = str[i++];
        
char c1 = str[i++];
        
int t = (int)c0 << 8;//得到高八位 
        
        t 
= t | (0x000000ff & (int)c1);//得到低八位 
        t &= 0x0000ffff;//去掉負號 
        
        
if(t >= 0xB0A1 && t < 0xB0C5){
            printf(
"A");    
        }

        
else if(t < 0xB2C1)
            printf(
"B");
        
else if(t < 0xB4EE)
            printf(
"C");
        
else if(t < 0xB6EA)
            printf(
"D");
        
else if(t < 0xB7A2)
            printf(
"E");
        
else if(t < 0xB8C1)
            printf(
"F");
        
else if(t < 0xB9FE)
            printf(
"G");
        
else if(t < 0xBBF7)
            printf(
"H");
        
else if(t < 0xBFA6)
            printf(
"J");
        
else if(t < 0xC0AC)
            printf(
"K");
        
else if(t < 0xC2E8)
            printf(
"L");
        
else if(t < 0xC4C3)
            printf(
"M");
        
else if(t < 0xC5B6)
            printf(
"N");
        
else if(t < 0xC5BE)
            printf(
"O");
        
else if(t < 0xC6DA)
            printf(
"P");
        
else if(t < 0xC8BB)
            printf(
"Q");
        
else if(t < 0xC8F6)
            printf(
"R");
        
else if(t < 0xCBFA)
            printf(
"S");
        
else if(t < 0xCDDA)
            printf(
"T");
        
else if(t < 0xCEF4)
            printf(
"W");
        
else if(t < 0xD1B9)
            printf(
"X");
        
else if(t < 0xD4D1)
            printf(
"Y");
        
else 
            printf(
"Z");
            
    }

    printf(
"\n");
        
}


int main()
{    
    scanf(
"%d"&N);
    getchar();
    
for(int i = 0; i < N; i++)
    
{
        gets(str);
        pro();
    }

    
    
//getchar();
}




posted on 2013-07-09 11:04 小鼠標 閱讀(1240) 評論(0)  編輯 收藏 引用 所屬分類: C語言

只有注冊用戶登錄后才能發表評論。
網站導航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


<2025年11月>
2627282930311
2345678
9101112131415
16171819202122
23242526272829
30123456

常用鏈接

隨筆分類(111)

隨筆檔案(127)

friends

最新評論

  • 1.?re: 線段樹
  • 是這個樣子的,所以在OJ有時候“卡住”了也不要太灰心,沒準真的不是自己的原因呢。
    加油,祝你好運啦!
  • --小鼠標
  • 2.?re: 線段樹
  • 對于編程競賽來說,Java所需時間一般為C/C++的兩倍。合理的競賽給Java的時間限制是給C/C++的兩倍。
  • --傷心的筆
  • 3.?re: poj1273--網絡流
  • 過來看看你。
  • --achiberx
  • 4.?re: (轉)ubuntu11.10無法啟動無線網絡的解決方法
  • 膜拜大神。。查了一個下午資料終于在這里解決了問題。。神牛說的區域賽難道是ACM區域賽。。?
  • --Hang
  • 5.?re: 快速排序、線性時間選擇
  • 博主,謝謝你的文章。你的方法可以很好的處理分區基準在數組中重復的情況,書上的方法遇到這種輸入會堆棧溢出。書上給出了解釋但給的方法貌似不簡潔。
  • --lsxqw2004

閱讀排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            国语自产精品视频在线看一大j8 | 91久久综合亚洲鲁鲁五月天| 一区二区欧美激情| 最新成人av在线| 亚洲日本理论电影| 日韩视频在线免费| 亚洲在线成人| 欧美美女bbbb| 欧美二区在线观看| 欧美三级第一页| 国产精品综合av一区二区国产馆| 国产精品卡一卡二卡三| 国产亚洲欧美日韩一区二区| 伊人春色精品| av成人激情| 久久精品99久久香蕉国产色戒 | 亚洲福利视频一区| 亚洲人成人一区二区三区| 夜夜嗨av色一区二区不卡| 亚洲欧美日韩视频一区| 久久久午夜精品| 欧美大秀在线观看| 国产区欧美区日韩区| 亚洲国产精品小视频| 亚洲一区二区不卡免费| 美女图片一区二区| 亚洲一区二区三区色| 欧美freesex交免费视频| 国产精品狼人久久影院观看方式| 激情小说另类小说亚洲欧美| 亚洲日本在线观看| 久久精品一区| 在线视频日韩精品| 欧美mv日韩mv国产网站| 国产欧美精品日韩精品| 夜夜精品视频一区二区| 男同欧美伦乱| 久久av一区二区三区| 国产精品久久久久77777| 亚洲激情小视频| 久久久久久亚洲精品不卡4k岛国| 日韩网站在线| 欧美fxxxxxx另类| 国产在线成人| 欧美呦呦网站| 亚洲深夜av| 欧美日韩成人| 夜夜嗨av一区二区三区四区| 亚洲高清视频的网址| 羞羞色国产精品| 欧美日韩性视频在线| 亚洲国产精品久久久久秋霞不卡| 久久精品30| 欧美一区二区观看视频| 国产精品美腿一区在线看| 99国产精品久久久久久久久久| 免费毛片一区二区三区久久久| 亚洲在线观看视频网站| 国产精品亚洲欧美| 久久精品毛片| 国产视频欧美视频| 亚洲国产精品久久久久| 一区二区三区 在线观看视频| 久久五月天婷婷| 国产亚洲精品成人av久久ww| 午夜精品久久久久久久99黑人| 日韩视频中午一区| 欧美日韩亚洲高清一区二区| 在线视频欧美精品| 国产精品99久久久久久有的能看| 欧美日韩国产一级片| 99国产精品久久久久久久久久| 亚洲人成人99网站| 欧美日韩一区三区| 亚洲黄色影片| 欧美激情一区二区久久久| 久久久噜噜噜久久久| 亚洲电影免费观看高清完整版| 免费一级欧美片在线观看| 蜜臀久久久99精品久久久久久 | 一区二区三区免费看| 亚洲激情偷拍| 欧美日韩在线观看一区二区三区| 一区二区三区波多野结衣在线观看| 最新亚洲视频| 国产精品美女www爽爽爽| 久久超碰97人人做人人爱| 午夜在线视频一区二区区别| 在线免费高清一区二区三区| 亚洲欧洲综合另类在线| 国产精品激情电影| 久久午夜电影| 欧美日韩国产高清视频| 久久久久久久久久久久久久一区| 久久先锋资源| 午夜伦理片一区| 欧美aⅴ一区二区三区视频| 亚洲性视频网址| 久久久久久亚洲精品杨幂换脸| 亚洲精品乱码久久久久久| 亚洲午夜精品久久| 亚洲黄一区二区三区| 亚洲伊人网站| 亚洲人成欧美中文字幕| 午夜精品影院在线观看| 99爱精品视频| 久久精品欧洲| 小黄鸭精品密入口导航| 欧美jizz19hd性欧美| 久久精品中文| 欧美三级电影一区| 欧美激情一区| 一区二区在线看| 亚洲一区二区黄| 9i看片成人免费高清| 久久久久99精品国产片| 亚洲欧美在线x视频| 国产精品白丝av嫩草影院| 久久久久久网| 国产精品自拍网站| 99re66热这里只有精品3直播| 韩国av一区二区三区四区| 在线视频精品一区| 99视频精品全部免费在线| 久久久噜噜噜久噜久久| 久久精品最新地址| 国产精品露脸自拍| 一区二区三区毛片| 亚洲一区成人| 国产精品国色综合久久| 亚洲精品一区二区三区av| 在线观看视频亚洲| 欧美专区在线观看一区| 久久精品国产99精品国产亚洲性色 | 久久av一区二区三区| 欧美一二三区精品| 国产精品福利在线观看| 一区二区不卡在线视频 午夜欧美不卡'| 亚洲国产高清在线观看视频| 久久精品亚洲一区| 噜噜噜91成人网| 激情久久五月| 久热成人在线视频| 亚洲区在线播放| 亚洲国产精品久久久久久女王| 国产美女精品| 亚洲视频碰碰| 亚洲婷婷综合色高清在线| 欧美日本高清| 亚洲美女精品成人在线视频| 99精品热视频| 国产精品wwwwww| 欧美一级午夜免费电影| 免费91麻豆精品国产自产在线观看| 国产综合自拍| 久久亚洲美女| 亚洲久久成人| 亚洲欧美在线网| 国产一区二区三区久久久久久久久| 99av国产精品欲麻豆| 午夜一区在线| 久久裸体视频| 欧美一区二区日韩一区二区| 欧美日韩少妇| 亚洲在线一区二区三区| 亚洲视频二区| 亚洲欧美激情四射在线日| 欧美高清在线视频观看不卡| 欧美精品一区二| 一区电影在线观看| 午夜一区不卡| 日韩午夜激情av| 亚洲字幕一区二区| 在线精品亚洲| 欧美尤物巨大精品爽| 日韩视频在线免费| 久久久免费精品| 久久亚裔精品欧美| 国产精品视频不卡| 亚洲电影视频在线| 国产在线一区二区三区四区| 亚洲国产精品久久久久秋霞影院| 国产乱码精品| 亚洲视频一二| 亚洲一区视频| 欧美日韩在线播放三区| 美玉足脚交一区二区三区图片| 国产精品久久久久高潮| 亚洲日本一区二区三区| 亚洲美女在线观看| 欧美精品一区二区三区一线天视频 | 欧美黄网免费在线观看| 国产精品国产精品| 一区二区三欧美| 欧美一二区视频| 激情六月综合| 欧美日韩在线三区| 一本一本久久a久久精品牛牛影视| 欧美一区二区在线看| 狂野欧美性猛交xxxx巴西|