7-1 币值转换 (20 分)
7-1 币值转换 (20 分)
输入一个整数(位数不超过9位)代表一个人民币值(单位为元),请转换成财务要求的大写中文格式。如23108元,转换后变成“贰万叁仟壹百零捌”元。为了简化输出,用小写英文字母a-j顺序代表大写数字0-9,用S、B、Q、W、Y分别代表拾、百、仟、万、亿。于是23108元应被转换输出为“cWdQbBai”元。
输入格式:
输入在一行中给出一个不超过9位的非负整数。
输出格式:
在一行中输出转换后的结果。注意“零”的用法必须符合中文习惯。
输入样例1:
813227345
输出样例1:
iYbQdBcScWhQdBeSf
输入样例2:
6900
输出样例2:
gQjB
流程图
实验代码
#include<stdio.h> #include<math.h> int main() { int i=-1,x,y,z,m,n,h,l,a; char c='a'; scanf("%d",&x); y=x; if(x==0) { printf("a"); } do { x=x/10; i++; } while(x!=0); do { if(i>=4) { h=y/10000; l=i-4; } if(i<4) { h=y; l=i; } a=pow(10,l); m=pow(10,i); z=y/m; if(z==0&&z!=n&&h%a!=0) { printf("a"); } if(z!=0) { printf("%c",c+z); if(i==8){ printf("Y"); } if(i==7||i==3) printf("Q"); if(i==6||i==2) { printf("B"); } if(i==5||i==1) { printf("S"); } if(i==4) { printf("W"); } } if(i==4&&z==0) { printf("W"); } if(n==0&&i==3&&z==0) { printf("a"); } y=y%m; i--; n=z; } while(y!=0); return 0; }
实验步骤
利用数学函数 include<math.h> 然后定义整型变量和字符变量 接着是判断输入的值, 然后利用除余的方式,整理出每一位数字,然后进行判断,最后输出结果!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义