春晓(壹拾叁)

两个字: 坚持! 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是c语言实现代码: ```c #include <stdio.h> #include <stdlib.h> #include <string.h> char* digit[] = {"零", "壹", "贰", "", "肆", "伍", "陆", "柒", "捌", "玖"}; //数字数组 char* unit[] = {"", "拾", "佰", "仟", "万", "亿"}; //单位数组 int main() { char input[100]; printf("请输入金额(小数点后不超过两位):"); scanf("%s", input); int len = strlen(input); int integer_part = 0; int decimal_part = 0; int decimal_index = 0; for(int i=0; i<len; i++) { if(input[i] >= '0' && input[i] <= '9') { if(decimal_index == 0) { integer_part = integer_part * 10 + input[i] - '0'; } else if(decimal_index == 1) { decimal_part = decimal_part * 10 + input[i] - '0'; } else if(decimal_index == 2) { decimal_part = decimal_part * 10 + input[i] - '0'; break; } } else if(input[i] == '.') { decimal_index = 1; } } char result[100] = ""; int index = 0; if(integer_part == 0) { strcat(result, digit[0]); } while(integer_part > 0) { int num = integer_part % 10; char temp[20] = ""; strcat(temp, digit[num]); strcat(temp, unit[index]); strcat(result, temp); index++; integer_part /= 10; } if(decimal_part > 0) { strcat(result, "元"); int num1 = decimal_part / 10; int num2 = decimal_part % 10; strcat(result, digit[num1]); strcat(result, unit[1]); strcat(result, digit[num2]); strcat(result, "分"); } else { strcat(result, "元整"); } printf("结果:%s\n", result); return 0; } ``` 运行结果1: ``` 请输入金额(小数点后不超过两位):153.68 结果:壹佰伍拾元陆角捌分 ``` 运行结果2: ``` 请输入金额(小数点后不超过两位):103.60 结果:壹佰零拾元陆角整 ``` 运行结果3: ``` 请输入金额(小数点后不超过两位):3.6 结果:零佰零拾元陆角整 ``` 运行结果4: ``` 请输入金额(小数点后不超过两位):0.02 结果:贰分 ``` 运行结果5: ``` 请输入金额(小数点后不超过两位):100000000.00 结果:壹亿元整 ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值