c語言拼音,C語言拼音逆序輸出

本文目錄一覽:

C語言中漢語拼音怎麼輸出

#includestdio.h

int main()

{

char a[10];

scanf(“%s”, a);

printf(“%s\n”, a);

return 0;

}

c語言可以用拼音編寫嗎

定義變數什麼的都可以使用拼音,但是最好不要這樣做,因為這樣不是良好的編碼風格,如果你以後自己看自己的程序的時候,拼音會讓你自己都不知道自己寫的什麼東西。最好還是用單詞,如果單詞比較多可以用單詞的縮寫

求問c語言中怎麼把一個字元串中的拼音換成漢字 如輸入jin tian 輸出今 tian

如果是簡單的實現的話可以使用哈希表,這樣查找可能比較快一點,但是漢字拼音相同的很多,

例如建立兩個相關的數組:

char pinyin[100][50]={“jin”,”tian”};

char hanzi[100][50] = {“今”,”天”};

然後將輸入的字與 pinyin表對比,找到index,然後對應輸出hanzi[index]

因為 C 語言沒有哈希表,需要自己實現,類似於上面的結構。

拼音分詞演算法 C語言

#include stdio.h

#define M_JUZI 200

// 樹圖的鏈表驗證結構

// 用圖的鏈式存儲來構造樹,子樹均記錄串的靜態位置(索引)

typedef struct ST_FenCi{

int LeiBie; // 連什麼類別?1 : 韻母,2 : 聲母

int SuoYin; // 聲母后的韻母索引 或者 詞語中韻母后一個字的聲母索引

struct ST_FenCi *pN; // 兄弟

} FenCi;

typedef struct ST_Ci{

int SuoYin; // 在原始串內的子串(字)索引

int Chang; // 子串長度

} Ci; // 記錄結果的結構

typedef struct ST_ShengMu {

char Pin[3]; // 聲母字元串

FenCi *pLian; // 分詞樹的子樹

} ShengMu; // 用來定義聲母的靜態集合

typedef struct ST_YunMu {

char Yin[5]; // 韻母字元串,區別於聲母

FenCi *pLian; // 分詞樹的子樹

} YunMu; // 用來定義韻母的靜態集合

// 聲母開字頭

ShengMu smJiHe[29] = {{“”},{“b”},{“c”},{“d”},{“”},{“f”},{“g”},

{“h”},{“”},{“j”},{“k”},{“l”},{“m”},{“n”},

{“”},{“p”},{“q”},{“r”},{“s”},{“t”},{“”},

{“”},{“w”},{“x”},{“y”},{“z”},{“ch”},{“sh”},{“zh”}};

// 韻母收字尾

YunMu ymJiHe[24] = {{“a”},{“o”},{“e”},{“i”},{“u”},{“v”},

{“ai”},{“ei”},{“ui”},{“ao”},{“ou”},

{“iu”},{“ie”},{“ue”},

{“er”},

{“an”},{“en”},{“in”},{“un”},{“vn”},

{“ang”},{“eng”},{“ing”},{“ong”}};

// 關於分字樹,完全可以按照「現代漢語詞典」的音節表來構造

// 某分字子樹的構造

void InitFenZiShu0() {

}

int main() {

char JuZi[M_JUZI];

//scanf(“%s”,JuZi);

// 演算法1. 首字哈希查找,鏈表連字,鏈表連詞

// 如果需要查找的表有限,可以用if ,else,也可以用哈希查找

// 待解決的問題:

// 1.1. 聲母頭與聲母尾的混淆,兩個字頭之間至少相差三個位置

// 1.2. 韻母尾與聲母頭的混淆,上下文,回退

// 1.3. 超前搜索,首先,如果韻母可以擴展到更長的另一個韻母,

// 1.3.1 從韻母收字的時候,

// 不僅要嘗試韻母的”擴展”,而且要判斷擴展後新韻母的後綴,

// 如果這個後綴為聲母頭,那麼在聲母頭的後面是否有合適的韻母構成一個新字?

// 如果有,就需要記錄這種可能,而且做好提前收尾的準備

// 如果沒有,理所當然要把新的韻母繼續”擴展”

// 這樣的韻母比如:e-er, a-an-ang, e-en-eng, i-in-ing, u-un,

// 這樣的聲母比如:e, r, g

// 1.3.2 從聲母找字的時候,

// 如果後面找不到聲母頭鏈表裡所有的韻母,就可以擴展匹配更長的聲母

// 演算法2. 漸進地找到所有聲母點,上下文分析,修正,分析到結構,顯示

// 演算法2.1 對原文的每個字,逐個匹配已知聲母

// 演算法2.2 已知聲母,在一定範圍里搜集在原文里出現的每個聲母點

getchar(); // enter

return 1;

}

C語言拼音打字程序問題

//這段程序錯誤太多,而且代碼風格太亂;

//不過估計您是個初學者,就幫你的程序按你思路修改了

//運行結果如下:

模仿拼音輸入法

請輸入拼音wo

wo

0.撾 1.萵 2.渦 3.窩 4.蝸 5.倭 6.踒 7.喔 8.我 9.肟 10.沃 11.卧 12.偓 13.握 14.幄

15.渥 16.齷 17.涴 18.硪 19.斡 請輸入對應的序號選字:2

//修改後程序如下,希望對你有用!

#includestdio.h

#includestring.h

int main() //是int還是void,根據編譯器,我用的是CodeBlocks需要用int

{

char wo[]= {“wo”};

char wo_ch[]= {“撾萵渦窩蝸倭踒喔我肟沃卧偓握幄渥齷涴硪斡”};

printf(“%d:%s\n”, strlen(wo_ch), wo_ch);

//char str_input[3];

unsigned int i=0,str_ch_len=strlen(wo_ch);

printf(“模仿拼音輸入法\n”);

printf(“請輸入拼音wo\n”);

//scanf(“%s”,str_input);

char str_input[3];

gets(str_input);//輸入拼音

//if(str_input==wo)//修改如下(字元串是不能直接比較的!)

if (0==strcmp(str_input,wo))

{

for(i=0; istr_ch_len; i+=2)

//printf(“%d.%c “i,wo_ch[i]); //修改如下(雙引號之後應該有,號)

printf(“%d.%c%c “,i/2,wo_ch[i],wo_ch[i+1]);

last:

printf(“請輸入對應的序號選字:”);

//scanf(“%d” i); //修改如下

unsigned int n;

scanf(“%u”, n);

if (2*nstr_ch_len)

{

printf(“你要選的字元不存在\n”);

goto last;

}

else

{

printf(“%c%c”,wo_ch[2*n],wo_ch[2*n+1]);

}

}

else

{

printf(“對不起,沒有找到該拼音的字型檔\n”);

}

return 0;//如果主函數是void,刪除此行!

}

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/243255.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-12 12:55
下一篇 2024-12-12 12:55

相關推薦

  • AES加密解密演算法的C語言實現

    AES(Advanced Encryption Standard)是一種對稱加密演算法,可用於對數據進行加密和解密。在本篇文章中,我們將介紹C語言中如何實現AES演算法,並對實現過程進…

    編程 2025-04-29
  • 學習Python對學習C語言有幫助嗎?

    Python和C語言是兩種非常受歡迎的編程語言,在程序開發中都扮演著非常重要的角色。那麼,學習Python對學習C語言有幫助嗎?答案是肯定的。在本文中,我們將從多個角度探討Pyth…

    編程 2025-04-29
  • Python被稱為膠水語言

    Python作為一種跨平台的解釋性高級語言,最大的特點是被稱為”膠水語言”。 一、簡單易學 Python的語法簡單易學,更加人性化,這使得它成為了初學者的入…

    編程 2025-04-29
  • OpenJudge答案1.6的C語言實現

    本文將從多個方面詳細闡述OpenJudge答案1.6在C語言中的實現方法,幫助初學者更好地學習和理解。 一、需求概述 OpenJudge答案1.6的要求是,輸入兩個整數a和b,輸出…

    編程 2025-04-29
  • Python按位運算符和C語言

    本文將從多個方面詳細闡述Python按位運算符和C語言的相關內容,並給出相應的代碼示例。 一、概述 Python是一種動態的、面向對象的編程語言,其按位運算符是用於按位操作的運算符…

    編程 2025-04-29
  • Python編程實現列表元素逆序存放

    本文將從以下幾個方面對Python編程實現列表元素逆序存放做詳細闡述: 一、實現思路 一般來說,使用Python將列表元素逆序存放可以通過以下幾個步驟實現: 1. 定義一個列表 2…

    編程 2025-04-29
  • Python語言由荷蘭人為中心的全能編程開發工程師

    Python語言是一種高級語言,很多編程開發工程師都喜歡使用Python語言進行開發。Python語言的創始人是荷蘭人Guido van Rossum,他在1989年聖誕節期間開始…

    編程 2025-04-28
  • Python語言設計基礎第2版PDF

    Python語言設計基礎第2版PDF是一本介紹Python編程語言的經典教材。本篇文章將從多個方面對該教材進行詳細的闡述和介紹。 一、基礎知識 本教材中介紹了Python編程語言的…

    編程 2025-04-28
  • Python語言實現人名最多數統計

    本文將從幾個方面詳細介紹Python語言實現人名最多數統計的方法和應用。 一、Python實現人名最多數統計的基礎 1、首先,我們需要了解Python語言的一些基礎知識,如列表、字…

    編程 2025-04-28
  • Python作為中心語言,在編程中取代C語言的優勢和挑戰

    Python一直以其簡單易懂的語法和高效的編碼環境而著名。然而,它最近的發展趨勢表明Python的使用範圍已經從腳本語言擴展到了從Web應用到機器學習等廣泛的開發領域。與此同時,C…

    編程 2025-04-28

發表回復

登錄後才能評論