把中文汉字大写数字 转换成 阿拉伯数字,如十万一千一百十二 变成 101112.

#include

#include

/*

* 注意字符串的比较用strcmp();

*/

int change(const char [][3]);

int match(const char *);

int is_flag(const char *);

int main(void)

{

char orig[][3]={"十", "万","一", "千", "一","百","十","二","#"};

printf("Answer is %d\n",change(orig));

return 0;

}

int change(const char orig[][3])

{

int i=0;

int sum=0;

int cur;

int flag;

while(strcmp(orig[i], "#") != 0)

{

cur = match(orig[i]);

flag = is_flag(orig[i]);

if(flag == 0) //字符为“零”

i++;

else if(flag > 0)//字符为1-10时

if(strcmp(orig[i+1], "#") != 0)

{

if(is_flag(orig[i+1]) == 1) //当 十后面 为数字时,例如十二

sum+=cur;

else//当 十后面 为量级时, 例如十万

sum+=cur*match(orig[++i]);

i++;

}

else //当字符为量级时,如“百”

{

sum+=cur;

i++;

}

else

{

sum+=cur;

++i;

}

}

return sum ;

}

int match(const char * str)

{

if(strcmp(str, "零")==0 ) return 0;

else if(strcmp(str, "一") == 0) return 1;

else if(strcmp(str, "二") == 0) return 2;

else if(strcmp(str, "三") == 0) return 3;

else if(strcmp(str, "四") == 0) return 4;

else if(strcmp(str, "五") == 0) return 5;

else if(strcmp(str, "六") == 0)return 6;

else if(strcmp(str, "七") == 0) return 7;

else if(strcmp(str, "八") == 0) return 8;

else if(strcmp(str, "九") == 0) return 9;

else if(strcmp(str, "十") == 0) return 10;

else if(strcmp(str, "百") == 0) return 100;

else if(strcmp(str, "千") == 0) return 1000;

else if(strcmp(str, "万") == 0) return 10000;

else return -1;

}

int is_flag(const char * str)

{

if(match(str)>=1 && match(str)<=10) return 1;

else if(match(str) == 0) return 0;

else return -1;

}

大写汉字转阿拉伯数字c语言,把中文汉字大写数字 转换成 阿拉伯数字相关推荐

  1. Python将汉字数字转换成阿拉伯数字的方法

    Python将汉字数字转换成阿拉伯数字的方法 - 玩蛇网 http://www.iplaypy.com/code/base/b2600.html 用Python语言来为不同数字之间做转换之前就有介绍过 ...

  2. 中文数字转换成阿拉伯数字(一千二百三十四万五千六百七十八-->12345678)

    昨天老大问我又没有写过中文数字转换成阿拉伯数字,我说没有,我说那应该简单啊,就是将中文对应的数字换成阿拉伯数字就好了啊,比如一就换成1,二就换成2-十换成10.可是那么问题来了- 一十二呢-不能是11 ...

  3. python123数字转换_Python将汉字数字转换成阿拉伯数字的方法

    用Python将汉字数字转换成阿拉伯数字的方法.汉字数字就是我们的大写数字:零.壹.贰.叁.肆.伍.陆.柒.捌.玖.拾,这种只有在会计人员才会常用的数字. Python把用汉字表示的数字转换为阿拉伯数 ...

  4. 如何把excel里面中文小写数字转换成阿拉伯数字

    今天跟大家分享一下如何把excel里面中文小写数字转换成阿拉伯数字 1.打开要处理的Excel文件 2.将E列数据复制一份到F列中并选中 3.点击下图选项(Excel工具箱,百度即可了解详细下载安装信 ...

  5. python将英文单词表示的数字转换成阿拉伯数字的代码

    下边内容内容是关于python将英文单词表示的数字转换成阿拉伯数字的内容. import re _known = { 'zero': 0, 'one': 1, 'two': 2, 'three': 3 ...

  6. 把英文转换成数字python_python实现将英文单词表示的数字转换成阿拉伯数字的方法...

    本文实例讲述了python实现将英文单词表示的数字转换成阿拉伯数字的方法.分享给大家供大家参考.具体实现方法如下: import re _known = { 'zero': 0, 'one': 1, ...

  7. 如何将汉语数字转换成阿拉伯数字!

    其实这个题目本身都还有点问题.汉语数字的表达方式何止一两种,而且还有很多不规范的称呼.所以,转换起来也是比较麻烦的.并且由于每个人的叫法不同,因此也不容易判定用户的输入是否合符常理和规范.这就只能靠大 ...

  8. c语言数字1 9转换英文,C语言提问:将一个月份数字转换成月份的英文名称

    优质解答 #include void main() { int n; char M; do { printf("Please input the number of the month:\n ...

  9. c语言数字怎么转换成英文字母,C语言提问:将一个月份数字转换成月份的英文名称...

    #include void main() { int n; char M; do { printf(Please input the number of the month:\n); scanf(%d ...

  10. 面试题06:一串英文数字转换成阿拉伯数字

    已知:zero,one,two,three,four,five,six,seven,eight,nine分别对应0,1,2,3,4,5,6,7,8,9,对每一段含有这几种字符串的字符串进行转换,如: ...

最新文章

  1. 高仿百思不得姐项目开发(粗略笔记,后期规范排版和更新)
  2. Spring Boot filter
  3. c语言通讯录打电话,求c语言编写的通讯录源代码
  4. HTML5的web开发,基于Html5技术的WEB开发
  5. vector 设置大小_BetterSnapTool for Mac(窗口设置工具) v1.9.3
  6. 【C语言】qsort函数用法(转)
  7. 关于设置table样式后,不停点击按钮table中的数据会逐渐被最后一行替换的问题...
  8. mysql编译gcov_Mysql 编译参数详解
  9. springboot做网站_Github点赞接近100k的SpringBoot学习教程+实战推荐!牛批!
  10. ON1 Resize 2022 for Mac(图片大小修改工具)
  11. 用条件注释判断浏览器版本,解决兼容问题
  12. java编程比赛_[阶段一]java基础编程比赛
  13. Java+Swing实现自助取款机(ATM)系统-TXT存储数据
  14. 码农和程序员之间的5个关键差异
  15. 目标检测数据集:直升机(1)
  16. Android打开H5时提示“请在微信客户端打开”
  17. 产品的分类(民用商用级、工业级、汽车电子级、军工级)
  18. 【金猿产品展】北森一体化人才管理云平台:让中国企业拥有世界领先的人才管理能力...
  19. 多进程与多线程的区别,和用途
  20. Elasticsearch灾备同步方案功能验证(三)

热门文章

  1. 产品-Axure9英文版,轮播图效果
  2. C++中this与*this的区别
  3. 【Vue】var that=this写法的意义
  4. Overleaf 硕士毕业论文参考文献格式设置
  5. 徐小明:上午涨的快,跌的也…
  6. 英文信详解:申请信、推荐信等等
  7. 乘幂法求矩阵的特征值及特征向量
  8. Ps 原来排版证件照如此简单(╹ڡ╹ )
  9. ps修改证件照的底色
  10. badboy的脚本录制教程