代码拉取完成,页面将自动刷新
同步操作将从 icesky1stm/Xipkpublib_Update 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
/*******************************************************
* 公 司: 大连同方软银科技有限公司
* 程 序 名: GetChineseNumber.c
* 程序功能: 转换数字为中文
* 输入参数:
* number 要转换的数据
* 输出参数:
* 返 回 值:
* 转换后中文
* 作 者: yangwc
* 开发日期: 2007/1
* 修 改 人:
* 修改日期:
*******************************************************/
#include "kernel/syspub.h"
char *GetChineseNumber(double number)
{
char *upnum[10] = {"零","壹","贰","叁","肆","伍","陆","柒","捌","玖", };
char *unit[15]= {"整", "分", "角", "元", "拾", "佰", "仟", "万", "拾", "佰", "仟", "亿", "拾", "佰", "仟", };
short limit[] = {14, 1, 2, 14, 4, 5, 6, 10, 8, 9, 10, 14, 12, 13, 14};
double fje;
short i, j, k, lim;
char *str, *str3, *str2, *wrstr;
char *p, str1[36];
fje = number;
if (fje < 0)
{
number = (-1) * number;
}
str = (char *)malloc(30);
str2 = (char *)malloc(3);
str3 = (char *)malloc(30);
wrstr = (char *)malloc(60);
sprintf(str, "%.2f", number);
i = 0;
j = k = strlen(str);
for(i = 0; i < j; i++)
{
if (str[i] == '.')
{
k = i;
break;
}
}
strncpy(str3, str, k);
str3[k] = '\0';
strncpy(str2, str+k+1, 2);
str2[2] = '\0';
strcat(str3, str2);
strcpy(str, str3);
k = k + 2;
if (k > 14)
{
free(str);
free(wrstr);
return((char *)0);
}
strcpy(wrstr, "");
j = 0;
lim = k;
for(i = k; i > 0; i--)
{
if (str[k-i] > '0')
{
if (lim > i+1)
strcat(wrstr, upnum[0]);
strcat(wrstr, upnum[str[k-i] - '0']);
strcat(wrstr, unit[i]);
lim = i;
}
else
if (lim <= limit[i])
strcat(wrstr, unit[i]);
}
/*********GL:整添加到角以前,不到分*********/
sprintf(str1, "%lf", number);
p = strchr(str1, '.');
p += 2;
if (*p == '0') strcat(wrstr, unit[0]);
/*************************/
/*free(str);*/
/*********yud:如果小于零,去掉圆字******/
if (number < 1.00 && number > 0.10)
{
strncpy(str1, wrstr+2, 8);
strcpy(wrstr, str1);
}
if (number < 0.10)
{
strncpy(str1, wrstr+4, 6);
strcpy(wrstr, str1);
}
if (fje == 0.00)
{
strcpy(str1, "零圆整");
strcpy(wrstr, str1);
}
/***************************************/
/*** add by icesky @20150402*/
free(str);
free(str2);
free(str3);
/*** add by icesky @20150402*/
return(wrstr);
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。