当前位置: 首页 > news >正文

汉唐皓月网站推广方案/游戏推广

汉唐皓月网站推广方案,游戏推广,南阳seo网站建设费用,温岭市住房和城乡建设规划局网站问题描述 设计程序完成从阿拉伯数字到人民币风格的字符串转换,需完成的功能如下: 1、 由用户输入并保存一个具有两位小数的金额,单位为元; 2、 能够对用户输入的人民币金额进行输出; 3、 能够将金额数值翻译成中文的表…

问题描述

设计程序完成从阿拉伯数字到人民币风格的字符串转换,需完成的功能如下:
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)非法字符串:提示用户重新输入。


流程设计

process


程序实现和测试



主要模块

1、用户输入判断模块:
主要用于判断用户输入的字符串的格式
(数字串、终止命令、非法字符串)
2、数字串转化模块:
主要用于将数字串转化为人民币风格的字符串
(整数部分转化、小数部分转化)


源代码

#include <iostream>
#include <string>
#include <stdlib.h>
#include <string.h>
#include <math.h>using namespace std;int main()
{//初始化计量单位和RMB风格的数字表示char measure[][4] = {"元","拾","佰","仟","万","亿"};char numchar[][4] = {"零","壹","贰","叁","肆","伍","陆","柒","捌","玖"};while(true){//接收用户输入的字符串int flag = 1;char instr[30];cin >> instr;char* p = instr;if(*p == '0' && (*(p+1)!='.' && *(p+1) !='\0'))flag = 0;elsewhile(*p){if(!isdigit(*p) && *p !='.'){flag = 0;break;}p ++;}if(flag == 1){//将输入的数字串转化为浮点型数据long double num1 = atof(instr);//获得输入的整数部分long int sector1 = static_cast<long int>(num1);//获得输入的小数部分float sector2 = num1 - sector1;//判断是否是数字串if(fabs(sector2) < 1e-6 && sector1 == 0){cout << "零" << endl;continue;}//将存放转化数据的串初始化为空string ostr = "";//将整数部分再转化为字符串存放在temp字符串中char temp[20];ltoa(sector1,temp,10);p = temp;int num = strlen(temp);//整数部分位数for(int i = 1;i <=num;i++){if(sector1 == 0)break;//定义k控制数字转换和计量单位的选择int k = (num - i) % 4;//将正在处理的字符串的数字位转化为数值int judgNum = *p & 15;//数字转化部分if(judgNum)ostr += numchar[judgNum];else{if(k && (*(p+1)&15))ostr += "零";}//计量单位转化if(k){if(judgNum)ostr += measure[k];}else{int j = num - i;if(j)ostr += measure[j/4 +3];elseostr += "元";}p++;}//处理小数部分if(fabs(sector2) < 1e-6)ostr += "整";else{p = instr;while(*p){if(*p == '.')break;p++;}if(*(p+1)=='0')ostr = ostr+ numchar[*(p+2) & 15] + "分";else{ostr = ostr + numchar[*(p+1)&15] +"角" ;if(*(p+2)!='\0' && *(p+2) != '0')ostr = ostr + numchar[*(p+2)&15] + "分";}}//输出源字符串和处理后字符串cout << "primitive str: " << instr << endl << "RMB: " << ostr << endl;}else{if(!strcmp(instr,"quit")){cout << "program have been stopped!" << endl;break;}else{cout << "your's input is illegal,please input legal data! " << endl;}}
}return 0;
}

测试用例

test1
test2

更多相关内容请参见

我的博客

http://www.lbrq.cn/news/1550017.html

相关文章:

  • 上海网络网站建设/磁力岛
  • 判断网站是否被k/惠州抖音seo策划
  • 广东网站建设服务公司/如何做网络营销推广
  • 阿里域名购买/seo软件视频教程
  • 免费虚拟主机控制面板/肇庆seo按天计费
  • 欧派网站谁做的/新东方
  • 优质校建设网站/seo网站推广目的
  • 怎么查什么时候做的网站/seo顾问公司
  • wordpress get_posts category/百度网站怎么优化排名靠前
  • 网站资源建设方案/网络服务商
  • asp与sql网站建设/成都关键词优化排名
  • 个人独资企业的优缺点/福建企业seo推广
  • 个人做网站花多少钱/百度商店应用市场
  • 中国购物网站排名/自己建网页
  • 深圳flash网站建设/seo培训学校
  • 淘宝客怎么样做网站/网络营销活动策划
  • 武汉 大型 网站建设/快速开发网站的应用程序
  • 桂林临桂区建设局网站/自动外链
  • 怎么做网站缩略图/网站优化外包
  • b2c模式的电子商务网站有哪些/站长工具关键词查询
  • 在线制作二维码网站/学校seo推广培训班
  • 网站开发公司排行/今日的新闻
  • idc销售网站php源码/seo优化工具软件
  • 电子商务网站建设的毕业论文/360关键词推广
  • 女做受网站/免费推广引流怎么做
  • 孝感58同城网站建设/百度竞价包年推广是怎么回事
  • 个人网站怎么做支付功能/2024最火的十大新闻
  • 南部县人民医院搬迁/优化一个网站需要多少钱
  • b2c平台网站建设/企业推广公司
  • 网站兼容手机/互联网广告推广好做吗
  • 云计算-云上实例部署 RocketChat:Mongodb、主从数据库、Node 环境配置指南
  • http工作流程
  • Day3--滑动窗口与双指针--2461. 长度为 K 子数组中的最大和,1423. 可获得的最大点数,1052. 爱生气的书店老板
  • 大模型应用发展与Agent前沿技术趋势(中)
  • 【Html网页模板】赛博朋克数据分析大屏网页
  • Linux sar命令详细使用指南