人民币小写转大写的一般方法。还可以

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;
}

人民币小写转大写的一般方法相关推荐

  1. java把小写变大写_用java实现人民币小写变大写的方法

    用java语言可以实现人民币小写转换为大写吗?如何实现呢?下面常见的用java实现人民币小写变大写的方法可以说是最精简的了,希望大家可以学习下. 这里介绍一个通过取余的办法来实现将人民币小写转换为大写 ...

  2. C语言实现人民币小写转大写

    这个是很早之前用C语言实现的人民币小写转大写的方法 /************************************************************************* ...

  3. php人民币小写转大写函数,php 人民币小写怎么转大写

    php人民币小写转大写的方法:首先创建一个PHP示例文件:然后通过"function num2rmb($number = 0, $int_unit = '', $is_round=FALSE ...

  4. c语言人民币小写转换成大写,C语言实现人民币小写转大写

    这个是很早之前用C语言实现的人民币小写转大写的方法 /************************************************************************* ...

  5. Java人民币小写转大写字符串

    写了一个人民币小写转大写的方法,Java版本,思路很简单,没有测出什么Bug,有bug欢迎反馈 public class RMBChange {private static String[] nums ...

  6. golang实现人民币小写转大写

    2019独角兽企业重金招聘Python工程师标准>>> 使用golang的正则表达式实现人民币小写转大写,代码如下: package mainimport ("regexp ...

  7. 人民币小写转换为大写函数

    人民币小写转换为大写 <script language=javascript> mymoney=window.prompt("请输入金额:"); </script ...

  8. 英文转中文和人民币小写转大写

    public static string PinYin(string mystr)   { //指转换一个中文    string tt;    if ((mystr.ToUpper().Compar ...

  9. php人民币小写转大写函数

    发现csdn所用的代码高亮插件也有同样的bug,当代码中含有empty函数时,总是会输出两个.本想在这里发下代码的,一看发出来是错的,还是作罢,以免误导同学.留个链接吧:php人民币小写转大写函数

最新文章

  1. 探讨UnsupportedOperationException的原因及解决方案
  2. 爬虫为什么用Chrome?
  3. OPENCV图像变换-1
  4. Microsoft Hololens开发上手(4)
  5. android Fragments详解六:处理fragement的生命周期
  6. Android第十二期 - NavigationDrawer侧边栏滑动效果左右可控制
  7. textfield设置一键删除
  8. STL 算法罗列 (转)
  9. Hadoop集群部署模型纵览3
  10. win10系统下mysql5.7初始化失败怎么办?
  11. DDOS攻击器常见的三种方式
  12. 鹰迪电商|抖音发布作品定位可以随便设置吗?
  13. NOI2021 退役记
  14. python使用venv环境报Python.h : No such file or direc
  15. 2021爱分析·云计算趋势报告——支撑数字化转型,企业云平台建设进入新阶段
  16. C语言 | 复制字符串 不用strcpy
  17. 计算机组成的了LDAR,静态存储器实验报告
  18. omni私链常用命令
  19. linux操作系统与Windows操作系统
  20. 微信H5视频全屏/不全屏/自动播放等相关问题解决

热门文章

  1. P2655 2038年问题
  2. python运动场地预约系统毕业设计开题报告
  3. 吴恩达机器学习(一)—— 简介
  4. 基于嵌入式ARM的mp3播放器的设计
  5. 【游戏逆向】FPS游戏自瞄透视模块动态加载分析
  6. 古文字识别助手与众包平台——项目博客五
  7. uniapp开发的H5网页,以表单形式调起微信H5支付
  8. 第三次作业:卷积神经网络基础
  9. JSON 是什么?JSON 介绍
  10. stm32之备份寄存器(BKP)应用(侵入检测中断)