当前位置:首页 » 编程语言 » c语言ltoa

c语言ltoa

发布时间: 2025-09-20 10:51:35

A. c语言编写一个能够将人民币小写金额自动转化为大写写金额的程序写出程序语句

#include <iostream>
#include <string>
#include <stdlib.h>
using namespace std;

string ConvertMoneyCaps(long double moneySum)
{
long int temp_i = (long int)moneySum; /**//* 整数部分 */
float temp_f = moneySum - temp_i; /**//* 小数部分 */
int digit = 0, i, j, k, num_i;
string money("");
char num[20], *p;
char name[][3] = {"元","拾","佰","仟","万","亿"};
char numchar[][3] = {"零","壹","贰","叁","肆","伍","陆","柒","捌","玖"};
ltoa(temp_i, num, 10); /**//* 整数部分转换成字符串后在搏毕慎处理 */
p = num;
digit = strlen(num); /**//* 整数部分位数 */
/**//*--------处理整数部分 start--------*/
for(i = 1; i <= digit; i ++)
{
k = (digit - i) % 4;
if(isdigit(*p))
{
num_i = *p & 0xF; /**//* 把字符转换成数字,比如 '0'-> 0,'1' ->基敬 1*/
/**//*--------转换数字开始---------*/
if(num_i)
{
money = money+ numchar[num_i];
}
else
{
if(k && (*(p + 1) &0xF))
money += "零";
}
/**//*--------转换数字结束-------*/
/**//*---------添加计数单位开始----*/
if(k)
{
if(num_i)
money = money + name[k];
}
else
{
j = digit - i;
if(j)
money = money + name[j/4 + 3];
else
money += "元";
}
/**//*--------添加计数单位结束数并--------*/
p++;
}
else
{
money = "遇到非数字退出!";
return money;
}
}
/**//*--------处理整数部分 End --------*/
/**//*--------处理小数部分 start--------*/
if(temp_f > 0.01)
{
if((int)(temp_f*10)) money = money + numchar[(int)(temp_f*10)] + "角";
if((int)(temp_f*100)%10) money = money + numchar[(int)(temp_f*100)%10] + "分";
}
/**//*--------处理小数部分 End--------*/
money += "整";

return money;
}
int main()
{
long double x = 33.20;
cout << "please input the money:";
cin >> x;
cout << "Convert Money Caps:";
string money = ConvertMoneyCaps(x);
cout << money <<endl;
return 0;
}

热点内容
云服务器是真云吗 发布:2025-09-20 13:13:04 浏览:978
html转pdfphp 发布:2025-09-20 13:12:51 浏览:212
反编译jne 发布:2025-09-20 13:06:23 浏览:418
数据库学生信息系统 发布:2025-09-20 13:04:52 浏览:439
三位小密码锁如何设置 发布:2025-09-20 12:59:00 浏览:968
好的服务器电脑 发布:2025-09-20 12:45:20 浏览:396
c语言进制格式 发布:2025-09-20 12:45:19 浏览:721
加密移动硬盘忘记密码 发布:2025-09-20 12:31:47 浏览:523
数据库约束是什么 发布:2025-09-20 12:14:07 浏览:746
我的世界统一验证服务器 发布:2025-09-20 11:51:59 浏览:193