zoukankan      html  css  js  c++  java
  • 币值转换

    输入一个整数(位数不超过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()
    {
        int n,l,i=0,c=0,d=0;
        char a[10]= {'a','b','c','d','e','f','g','h','i','j'};
        char b[10]= {' ',' ','S','B','Q','W','S','B','Q','Y'};
        char num[10];
        gets(num);
        l=strlen(num);
        if(num[0]=='0'&&l==1)
            printf("a");
        else
            while(l-->0)
            {
                n=num[i++]-'0';
                if(n!=0)
                {
                    if(c==1)
                        printf("a");
                    printf("%c",a[n]);
                    c=0;
                }
                else
                {
                    c=1;
                    if(l==4&&d==1)
                        printf("W");
                    continue;
                }
                if(l>0)
                {
                    if(l>4&&l<8) d=1;
                    printf("%c",b[l+1]);
                }
            }
        return 0;
    }
    ```

    **设计思路**

    将整数存入一个数组,可用strlen()计算数组长度,就可以得出这个整数的位数。将数组里保存的整数转化为整数型,判断每个数是否为0;单独判断长度为1,直接输出a;从高位到低位逐渐转换,遇到0时,将其放到下一次循环不是0的时候一并输出0,本轮只输出单位。(连续0只输出一个)整数大于万时,减到千位前单独输出w。
     

    **运行结果截图**



  • 相关阅读:
    PAT顶级 1024 Currency Exchange Centers (35分)(最小生成树)
    Codeforces 1282B2 K for the Price of One (Hard Version)
    1023 Have Fun with Numbers (20)
    1005 Spell It Right (20)
    1092 To Buy or Not to Buy (20)
    1118 Birds in Forest (25)
    1130 Infix Expression (25)
    1085 Perfect Sequence (25)
    1109 Group Photo (25)
    1073 Scientific Notation (20)
  • 原文地址:https://www.cnblogs.com/scafer/p/10414762.html
Copyright © 2011-2022 走看看