问题描述

Tom教授正在给研究生讲授一门关于基因的课程,有一件事情让他颇为头疼:一条染色体上有成千上万个碱基对,它们从0开始编号,到几百万,几千万,甚至上亿。
  比如说,在对学生讲解第1234567009号位置上的碱基时,光看着数字是很难准确的念出来的。
  所以,他迫切地需要一个系统,然后当他输入12 3456 7009时,会给出相应的念法:
  十二亿三千四百五十六万七千零九
  用汉语拼音表示为
  shi er yi san qian si bai wu shi liu wan qi qian ling jiu
  这样他只需要照着念就可以了。
  你的任务是帮他设计这样一个系统:给定一个阿拉伯数字串,你帮他按照中文读写的规范转为汉语拼音字串,相邻的两个音节用一个空格符格开。
  注意必须严格按照规范,比如说“10010”读作“yi wan ling yi shi”而不是“yi wan ling shi”,“100000”读作“shi wan”而不是“yi shi wan”,“2000”读作“er qian”而不是“liang qian”。
输入格式
  有一个数字串,数值大小不超过2,000,000,000。
输出格式
  是一个由小写英文字母,逗号和空格组成的字符串,表示该数的英文读法。
样例输入
1234567009
样例输出
shi er yi san qian si bai wu shi liu wan qi qian ling jiu

代码:

#include<iostream>
#include<string.h>
#include<vector>
using namespace std;
string p[]= {"ling", "yi", "er", "san", "si", "wu", "liu", "qi", "ba","jiu", "shi", "bai", "qian", "wan"};
int main() {string s, str1, str2, str3, ans;cin>>s;int cnt=s.size();for(int i=0; i<s.size(); i++, cnt--) {if(s[i]!='0') {if(i-1>=0&&s[i-1]=='0')ans=ans+p[0]+" ";ans=ans+p[s[i]-'0']+" ";switch(cnt%4) {case 0:ans+="qian ";break;case 3:ans+="bai ";break;case 2:ans+="shi ";break;default:break;}}switch(cnt) {case 9:ans+="yi ";break;case 5:ans+="wan ";break;default:break;}}if(ans.substr(0, 6)=="yi shi")ans=ans.substr(3, ans.size()-1);cout<<ans<<endl;return 0;
}

运行示例

基础练习 数的读法(Tom教授正在给研究生讲授一门关于基因的课程,有一件事情让他颇为头疼:一条染色体上有成千上万个碱基对,它们从0开始编号,到几百万,几千万,甚至上亿。   比如说,在对学生讲解第1)相关推荐

  1. 试题 基础练习 数的读法

    试题 基础练习 数的读法 资源限制 时间限制:1.0s 内存限制:512.0MB 问题描述 Tom教授正在给研究生讲授一门关于基因的课程,有一件事情让他颇为头疼:一条染色体上有成千上万个碱基对,它们从 ...

  2. 蓝桥杯试题 基础练习 数的读法(c++ Python)

    试题 基础练习 数的读法 资源限制 时间限制:1.0s   内存限制:512.0MB 问题描述 Tom教授正在给研究生讲授一门关于基因的课程,有一件事情让他颇为头疼:一条染色体上有成千上万个碱基对,它 ...

  3. 蓝桥杯基础练习-数的读法

    蓝桥杯基础练习-数的读法 问题描述 Tom教授正在给研究生讲授一门关于基因的课程,有一件事情让他颇为头疼:一条染色体上有成千上万个碱基对,它们从0开始编号,到几百万,几千万,甚至上亿. 比如说,在对学 ...

  4. 蓝桥杯 基础练习 数的读法

    问题描述 Tom教授正在给研究生讲授一门关于基因的课程,有一件事情让他颇为头疼:一条染色体上有成千上万个碱基对,它们从0开始编号,到几百万,几千万,甚至上亿. 比如说,在对学生讲解第123456700 ...

  5. [Java] 蓝桥杯BASIC-20 基础练习 数的读法

    问题描述 Tom教授正在给研究生讲授一门关于基因的课程,有一件事情让他颇为头疼:一条染色体上有成千上万个碱基对,它们从0开始编号,到几百万,几千万,甚至上亿. 比如说,在对学生讲解第123456700 ...

  6. 蓝桥杯 BASIC-20 基础练习 数的读法 问题

    问题描述 Tom教授正在给研究生讲授一门关于基因的课程,有一件事情让他颇为头疼:一条染色体上有成千上万个碱基对,它们从0开始编号,到几百万,几千万,甚至上亿. 比如说,在对学生讲解第123456700 ...

  7. 蓝桥杯--试题 基础练习 数的读法

    问题描述 Tom教授正在给研究生讲授一门关于基因的课程,有一件事情让他颇为头疼:一条染色体上有成千上万个碱基对,它们从0开始编号,到几百万,几千万,甚至上亿. 比如说,在对学生讲解第123456700 ...

  8. 蓝桥杯vip试题 基础练习 数的读法(C语言)

    资源限制 时间限制:1.0s 内存限制:512.0MB 问题描述 Tom教授正在给研究生讲授一门关于基因的课程,有一件事情让他颇为头疼:一条染色体上有成千上万个碱基对,它们从0开始编号,到几百万,几千 ...

  9. Java实现 蓝桥杯 蓝桥杯VIP 基础练习 数的读法

    问题描述 当输入12 3456 7009时,会给出相应的念法: 十二亿三千四百五十六万七千零九 用汉语拼音表示为 shi er yi san qian si bai wu shi liu wan qi ...

最新文章

  1. 理解卷积神经网络中的自注意力机制
  2. 由浅入深:自己动手开发模板引擎——解释型模板引擎
  3. bootsect.s文件阅读问题集
  4. vs2010本地调试打不开网页
  5. linux中apache配置文件在哪,linux网站服务Apache的安装与配置方法详解
  6. 梅露可物语虚拟服务器,【图片】【萌新】主界面的使用方法(零基础版)【梅露可物语日服吧】_百度贴吧...
  7. JP摩根预测:诺基亚2017年净利润将达14.21亿美元
  8. 这款折纸机器人玩具,可以帮助孩子学习编程和Robot知识
  9. Linux jdk 环境变量配置
  10. 大学计算机学五笔吗,新手学五笔打字
  11. Oracle 安装 与 卸载 以及 使用 plsqldev
  12. 从SVN下载项目到本地的eclipse 工作空间
  13. 关于MATLAB调用第三方程序
  14. HTML5+CSS大作业——学生个人博客(5页) 大学生个人博客网页作品 网页设计作业模板 学生网页制作源代码下载
  15. 小学信息技术 计算机组装,浅谈小学信息技术教学创新
  16. 使用zxing生成带logo的二维码图片,自动调节logo图片相对二维码图片的大小
  17. 《每日论文》ImageNet Classification with Deep Convolutional Neural Networks
  18. 随机过程理论知识(一)
  19. 基于SpringBoot 适合学习的开源社区平台
  20. Material Design之定制动画--触摸反馈,循环揭露,转场动画,共享元素和曲线运动

热门文章

  1. 段码液晶屏的图纸尺寸应该怎么来设计(5)
  2. seo网站优化之如何优化网站导航系统
  3. 2022年5月3日,第26天
  4. 电子听诊器智能化后对健康生活有多大的帮助?
  5. 企业微信集成其他html,企业微信(新微信企业号)集成
  6. spring boot 有哪些方式可以实现热部署?
  7. leetcode抢救
  8. 【JZOJ 省选模拟】铺路 (road )
  9. 天猫5403亿!京东出王炸,地下物流“胶囊快递”曝光!
  10. 六世班禅仓央嘉措的诗