人民币小写转大写的一般方法
人民币小写转大写的一般方法。还可以
const char* RMB(double rmb)
{
if(rmb<0) return NULL;
static char *CCC[10]={ //Capital form of Chinese character
"零","壹","贰","叁","肆","伍","陆","柒","捌","玖"
};
static char *QQQ[19]={"分","角",".","圆","拾","佰","仟","万","拾","佰","仟","亿",
"拾","佰","仟","万","拾","佰","仟"
};
static char result[256],tmp[256];
sprintf(tmp,"%.2lf",rmb);
if(strlen(tmp)>19) return NULL;
int i=strlen(tmp)-1,c;
char *srcPtr=tmp,*dstPtr=result;
bool bPrevZero=false;
for(; *srcPtr; srcPtr++,i--) {
if(*srcPtr=='.') continue;
c=*srcPtr-'0';
if(c!=0) {
strcpy(dstPtr,CCC[c]); dstPtr+=2;
if(srcPtr==tmp && c==1 && strcmp(QQQ[i],"拾")==0) dstPtr-=2;
strcpy(dstPtr,QQQ[i]); dstPtr+=2;
bPrevZero=false;
continue;
}
if(bPrevZero) {
if(strcmp(QQQ[i],"圆")==0 || strcmp(QQQ[i],"万")==0 || strcmp(QQQ[i],"亿")==0) {
dstPtr-=2; *dstPtr=0;
if(strcmp(dstPtr-2,"亿")) {strcpy(dstPtr,QQQ[i]); dstPtr+=2;}
bPrevZero=false;
}
} else {
if(strcmp(QQQ[i],"圆") && strcmp(QQQ[i],"万") && strcmp(QQQ[i],"亿")) {
strcpy(dstPtr,"零"); dstPtr+=2;
bPrevZero=true;
}else {
strcpy(dstPtr,QQQ[i]); dstPtr+=2;
bPrevZero=false;
}
}
}
i=strlen(result);
if(strcmp(result+i-2,"零")==0) result[i-2]=0;
tmp[0]=result[0]; tmp[1]=result[1]; tmp[2]=0;
if(strcmp(tmp,"圆")==0) {
if(result[2]==0) strcpy(result,"零圆");
else {
tmp[0]=result[2]; tmp[1]=result[3]; tmp[2]=0;
return strcmp(tmp,"零")==0 ? result+4 : result+2 ;
}
}
return result;
}
人民币小写转大写的一般方法相关推荐
- java把小写变大写_用java实现人民币小写变大写的方法
用java语言可以实现人民币小写转换为大写吗?如何实现呢?下面常见的用java实现人民币小写变大写的方法可以说是最精简的了,希望大家可以学习下. 这里介绍一个通过取余的办法来实现将人民币小写转换为大写 ...
- C语言实现人民币小写转大写
这个是很早之前用C语言实现的人民币小写转大写的方法 /************************************************************************* ...
- php人民币小写转大写函数,php 人民币小写怎么转大写
php人民币小写转大写的方法:首先创建一个PHP示例文件:然后通过"function num2rmb($number = 0, $int_unit = '', $is_round=FALSE ...
- c语言人民币小写转换成大写,C语言实现人民币小写转大写
这个是很早之前用C语言实现的人民币小写转大写的方法 /************************************************************************* ...
- Java人民币小写转大写字符串
写了一个人民币小写转大写的方法,Java版本,思路很简单,没有测出什么Bug,有bug欢迎反馈 public class RMBChange {private static String[] nums ...
- golang实现人民币小写转大写
2019独角兽企业重金招聘Python工程师标准>>> 使用golang的正则表达式实现人民币小写转大写,代码如下: package mainimport ("regexp ...
- 人民币小写转换为大写函数
人民币小写转换为大写 <script language=javascript> mymoney=window.prompt("请输入金额:"); </script ...
- 英文转中文和人民币小写转大写
public static string PinYin(string mystr) { //指转换一个中文 string tt; if ((mystr.ToUpper().Compar ...
- php人民币小写转大写函数
发现csdn所用的代码高亮插件也有同样的bug,当代码中含有empty函数时,总是会输出两个.本想在这里发下代码的,一看发出来是错的,还是作罢,以免误导同学.留个链接吧:php人民币小写转大写函数
最新文章
- 探讨UnsupportedOperationException的原因及解决方案
- 爬虫为什么用Chrome?
- OPENCV图像变换-1
- Microsoft Hololens开发上手(4)
- android Fragments详解六:处理fragement的生命周期
- Android第十二期 - NavigationDrawer侧边栏滑动效果左右可控制
- textfield设置一键删除
- STL 算法罗列 (转)
- Hadoop集群部署模型纵览3
- win10系统下mysql5.7初始化失败怎么办?
- DDOS攻击器常见的三种方式
- 鹰迪电商|抖音发布作品定位可以随便设置吗?
- NOI2021 退役记
- python使用venv环境报Python.h : No such file or direc
- 2021爱分析·云计算趋势报告——支撑数字化转型,企业云平台建设进入新阶段
- C语言 | 复制字符串 不用strcpy
- 计算机组成的了LDAR,静态存储器实验报告
- omni私链常用命令
- linux操作系统与Windows操作系统
- 微信H5视频全屏/不全屏/自动播放等相关问题解决