用散列表实现输入拼音输出大写英文字母的功能
来源:互联网 发布:500定金违约金怎么算法 编辑:程序博客网 时间:2024/05/17 02:58
我本来是想实现输入拼音输出汉字的功能,可是,好像是因为C语言只能识别256个ASCII码,所以出现了乱码现象,所以我不得已把汉字改成了大写英文字母。
实现的关键是哈希函数,这里因为我只是做练习而不是真正的项目开发,所以我只开了一个大小为11的数组用来存储数据。
我的哈希函数是将字符串的各位变成整数(减去‘a')并相加,最后得到的整数再除以素数11,。这样一个映射关系就成型了,根据测试,作为一个小练习效果还是不错的。
//只支持dong、cheng、rong这三个拼音,windows结束标志为ctrl+z再敲回车
#include<stdio.h>#include<string.h>int table[11];char s[11];int key(char *s){ int sum=0,i; for(i=0;i<strlen(s);i++){ sum+=(s[i]-'a'); } return sum%11;}int main(){ table[3]='D',table[10]='C',table[6]='R'; while(scanf("%s",s)==1){ printf("%c\n",table[key(s)]); } return 0;}
阅读全文
2 0
- 用散列表实现输入拼音输出大写英文字母的功能
- 用循环实现连续大写英文字母的输出
- OJ 2687: 用循环实现连续大写英文字母的输出
- 要求改用相应的小写字母输出. 从键盘上输入一大写英文字母
- 输出一个字符串的大写英文字母数,小写英文字母数即非英文字母数
- 输出一个字符串的大写英文字母数,小写英文字母数即非英文字母数--java
- Android EditTextView 设置输入英文字母全部大写
- 汇编语言: 从键盘上输入一串字符(用回车键结束,使用10号功能调用。),将其中的小写英文 字母变换为大写英文字母,其他字符保持不变。然后将变换后的字符串显示出来。
- java编写输出一个字符串中大写英文字母数、小写英文字母数以及非英文字母数
- 怎样关闭这个愚蠢的功能--Word自动将第一个英文字母变成大写
- 关于MonoDevelop前面大写英文字母的含义
- 将输入的阿拉伯数字转换的汉字的大写输出
- 将输入的阿拉伯数字转换的汉字的大写输出
- 输入数字,输出中文大写
- 用ASP实现汉字转拼音的功能
- 用ASP实现汉字转拼音的功能
- 【C++学习】vector的使用,输入小写,输出大写---ShinePans
- 把输入字符的小写转换成大写并输出
- css控制td内文字数量,以省略号显示
- BZOJ4516: [Sdoi2016]生成魔咒
- 关于null的类型 的一点想法
- SSH整合
- 前后端分离
- 用散列表实现输入拼音输出大写英文字母的功能
- 集合
- MyBatis使用视图
- spring 事务 FlushMode属性的理解
- linux下安装redis出现错误及其解决方案
- Kotlin for Android
- webSocket详解
- 配置java环境
- POJ 2007 Scrambled Polygon 笔记