问题描述
设计程序完成从阿拉伯数字到人民币风格的字符串转换,需完成的功能如下:
1、 由用户输入并保存一个具有两位小数的金额,单位为元;
2、 能够对用户输入的人民币金额进行输出;
3、 能够将金额数值翻译成中文的表达方式进行输出;
4、 程序不断读取用户输入,并给出两种输出,直到用户输入quit 结束执行。
注意事项:
1、用户输入纯整数或者纯小数;
2、用户输入0或者0.0或者0.00要求输出为‘’零‘’;
3、输入不是数字串或者‘quit’或者输入051.42、01.00等都为非法输入;
4、有多个零时只显示一个;
5、只有整数部分时需要后缀‘整’字样;
6、只有小数部分时整数部分的零应该省略。
问题分析
输入:
用户输入的需要转换的阿拉伯数字串或者终止程序执行的quit命令或者其它非法字符串
输出:
用户输入的待处理的字符串和(若用户输入的字符串符合处理条件)转换为RMB风格的数值表示结果
主要处理过程:
采用C风格的字符串接受用户输入判断是否满足处理要求;
(1)满足处理条件:将用户输入的字符串数组分为整数部分和小数部分进行处理并输出字符串和处理结果;
(2)结束标志‘quit’: 终止程序;
(3)非法字符串:提示用户重新输入。
流程设计
程序实现和测试
主要模块
1、用户输入判断模块:
主要用于判断用户输入的字符串的格式
(数字串、终止命令、非法字符串)
2、数字串转化模块:
主要用于将数字串转化为人民币风格的字符串
(整数部分转化、小数部分转化)
源代码
1 | #include <iostream> |
测试用例
)