博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
币值转换
阅读量:7044 次
发布时间:2019-06-28

本文共 1705 字,大约阅读时间需要 5 分钟。

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

1)实验代码

include<stdio.h>

include<math.h>

int n,s=0;

int main(void)
{
int i,j,k,p=1,flag=1;
int f(int q,int n);
scanf("%d",&n);

for(i=0;n/p>=10;i++){    p=pow(10,i);    s++;}if(n==0) printf("a");if(n<10&&n>=0) s=1;for(j=1;j<=s;j++){    switch(f(j,n)){        case 0:if(j!=s&&j!=s-4){            if(f(j+1,n)==0) flag=0;            else flag=1;            if(flag)printf("a");break;            };break;        case 1:printf("b");break;        case 2:printf("c");break;        case 3:printf("d");break;        case 4:printf("e");break;        case 5:printf("f");break;        case 6:printf("g");break;        case 7:printf("h");break;        case 8:printf("i");break;        case 9:printf("j");break;    }    if(f(j,n)==0&&j!=s&&j!=s-4) continue;    else{        if(s==9&&j==5){            if(f(2,n)==0&&f(3,n)==0&&f(4,n)==0&&f(5,n)==0)            continue;        }    switch(s-j){        case 1:printf("S");break;        case 2:printf("B");break;        case 3:printf("Q");break;        case 4:printf("W");break;        case 5:printf("S");break;        case 6:printf("B");break;        case 7:printf("Q");break;        case 8:printf("Y");break;    }}} return 0;

}

int f(int q,int n)
{
int k,a;
if(q==1) k=n/pow(10,s-1);
else{
a=n/pow(10,s-q+1);
k=n/pow(10,s-q)-a*10;
}
return k;
}
2)实验思路
流程图
1580654-20190220133843350-1515921014.png

3)实验中碰到的问题及解决方法

问题:在输入尾数为0的数出错
解决:没有考虑后面为0的情况,然后添加一段代码
4)实验结果
1580654-20190220134241406-615444468.png

转载于:https://www.cnblogs.com/tanghenghui/p/10406079.html

你可能感兴趣的文章
CoreCLR文档翻译 - GC的设计
查看>>
js-ES6学习笔记-Proxy(2)
查看>>
Spring Boot下Druid连接池+mybatis
查看>>
Session与Cookie解析
查看>>
Java实现二叉排序树的插入、查找、删除
查看>>
Delphi线程定时器TThreadedTimer及用法--还有TThreadList用法可以locklist
查看>>
UVA 12124 UVAlive 3971 Assemble(二分 + 贪心)
查看>>
EventBus In eShop -- 解析微软微服务架构Demo(四)
查看>>
使用Python写的第一个网络爬虫程序
查看>>
找到当前mysql group replication 环境的primary结点
查看>>
正确的C++/C堆栈
查看>>
使用Swagger生成Spring Boot REST客户端(支持Feign)(待实践)
查看>>
solr6.6 配置拼音分词
查看>>
datatables参数配置详解
查看>>
Composer 结合 Git 创建 “服务类库”
查看>>
Redis线程模型
查看>>
修改firefox/chrome浏览器的UserAgent
查看>>
sql 基础练习 计算7天各个时间点的总和 group by order mysql一次查询多个表
查看>>
MySQL高级-索引优化
查看>>
SQL中Group By的使用
查看>>