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/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

发表回复

登录后才能评论