寒假作业2:币值转换

摘要:
7-1货币换算(20分)输入一个整数表示人民币值。请将其转换为财务部门要求的大写中文格式。例如,23108元换算后将变成“贰万叁仟壹佰捌元”。注意,“零”的使用必须符合中国的习惯。输入示例1:813227345输出示例1:iYbQdBcScWhQdBeSf输入示例2:6900输出示例2:gQjB实验代码:#include<studio h>intmain(){charNUM[10]={‘a’,‘b’,‘c’,‘d’,‘e’,‘f’,‘g’,‘h’,‘i’,‘j’};//保存数字charUNIT[10]={0,0,'S','B','Q','W','S'','B','Q','Y'}//存储单元将下标与数字对应,前两个单元存储为0charRESULT[17]//保存结果,最多9个数字,8个单位intn,k=0,bitnum=0,cur,pre//定义输入数字、结果数组索引、位数、当前位和前一位扫描;如果{printf(“a”);return0;}而(n!
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>
int main ()
{
    char NUM[10]={'a','b','c','d','e','f','g','h','i','j'};    //存数字 
    char UNIT[10]={0,0,'S','B','Q','W','S','B','Q','Y'};//存单位,为将下标与位数对应,前两个单元存0
    char RESULT[17];//存结果,最多存9个数字,8个单位
    int n,k=0,bitnum=0,cur,pre;    //定义输入数字,结果数组索引,位数,当前位,前一位
    
    scanf("%d", &n);
    
    if(n==0)
    {
        printf("a");
        return 0;
    }
    while(n!=0)
    {
        cur = n % 10;
        n /= 10;
        bitnum++;  //求位数 
         
    if(cur!=0)
    {
        if(bitnum>1)//如果不为个位,存单位 
        RESULT[k++] = UNIT[bitnum];
        
        RESULT[k++] = NUM[cur];//无论如何,存数字 
    }
    else//如果当前位为0 
    {
        if(bitnum==5)  //万位 
        RESULT[k++] = UNIT[bitnum];
        
        if(pre!=0&&bitnum!=4&&bitnum!=1)//若不为万位,千位,个位,且前一位不为0
        RESULT[k++]=NUM[cur];//存当前的数字0
    }

        pre=cur;//注意及时保存当前位 
    }
    for(int i=k-1;i>=0;i--)//倒序输出结果 
    printf("%c",RESULT[i]);

    return 0;
}

搞了好久没搞出来,然后去参考了大佬的博客,然而还是没怎么搞懂

免责声明:文章转载自《寒假作业2:币值转换》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇校园日常(持续更新中)JS--微信浏览器复制到剪贴板实现下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

随便看看

搭建Squid3 密码账号IP代理

默认端口是端口3128,它已被滥用。注意修改端口,并应用Squid密码帐户方法保护流量...

数据不平衡的相关

大多数常见的机器学习算法不能很好地处理不平衡的数据集。例如,搜索引擎的点击预测(点击页面往往占很小的比例)、电子商务中的产品推荐(正在购买的推荐产品的比例很低)、信用卡欺诈检测、网络攻击识别、癌症检测等。处理数据不平衡的方法主要有以下几种。2.数据级别2.1重新采样2.1.1欠采样(下采样)欠采样通过减少丰富类的大小来平衡数据集。它试图通过增加稀有样本的数量...

arcgispro 计算字段示例

使用两个或四个空格来定义每个逻辑级别。Python计算表达式字段将使用感叹号(。简单计算简单字符串示例一系列Python字符串函数支持使用字符串。字符串字段中的字符可以通过索引和拆分操作访问“”bcd“”Python还支持使用format()方法的字符串格式!)常用Python字符串操作简单数学示例Python提供了处理数字的工具。...

安装gulp教程(整理)

所以安装nodejs。...

Python-正则

,三:量词*重复0次或多次{0,}+重复一次或多次{1,}?重复0或1次{1,0}{n}重复n次{n}{n,}重复n次,或更多次{n,m}将n次重复到m次Escape:如果字符串中有特殊字符要匹配,请在常规字符和字符串前面添加r。如果特殊字符在字符组中,则它们是匹配的特殊字符,但为了记忆,匹配时会转义所有特殊字符。...

koroFileHeader插件快速入门使用教程

插件下载插件可以直接在vscode的扩展中查找koroFileHeader,但是有时候由于网络的问题会查找不到软件。插件配置koroFileHeader支持许多功能,但是不是所有功能都是需要,我们关注往往是如何配置注释内容和注释的一些选项。"fileheader.cursorMode":{//这部分是函数头的配置},"fileheader.customMad...