⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 cutocnum.cpp

📁 供销存软件
💻 CPP
字号:
#include <vcl.h>
#include "Classes.hpp"
#include "string.h"
#pragma package(smart_init)
AnsiString CurrToChnNum(float CurrNum, bool DisplayZero, int SpaceNum)
//参数说明:CurrNum       这个是要转化的数值
//DisplayZero   是否要显示零 如:(显示零)壹佰 零拾 叁元 伍角 伍分
//SpaceNum      字符间的空格数,默认值为2
{
    //数值转换为大写金额
    //18个数字单位
    const String Dw[18] = {"分","角","元","拾","佰","仟","万","拾","佰","仟","亿","拾","佰","仟","兆","拾","佰","仟"};
    //10个数码
    const String Num[10] = {"零","壹","贰","叁","肆","伍","陆","柒","捌","玖"};
    AnsiString sTemp;
    sTemp = FormatFloat("0.00", CurrNum);     //格式化数值
    sTemp.Delete(sTemp.Pos("."), 1);          //去掉小数点
    if ( sTemp.Length() > 18 )                //是否超长?
    {
        MessageDlg("数值位数太多,不能处理!",mtError,TMsgDlgButtons() << mbYes,0);
        return NULL;
    }
    AnsiString sRusult = "¥";               //字串的头部字符,根据喜好
    for (int i = sTemp.Length(); i > 0; i--)  //开始加工
    {
        if ( !DisplayZero && i > 2 && sTemp[sTemp.Length() - i + 1] - 48 == 0 )
            continue;
        sRusult += Num[sTemp[sTemp.Length()-i+1]-48];
        sRusult += Dw[i-1];
        sRusult += AnsiString::StringOfChar(' ', SpaceNum);
    }
    return sRusult;
}
 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -