zoukankan      html  css  js  c++  java
  • 寒假作业2(币值转换)

    币值转换 

    输入一个整数(位数不超过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 aa(int a);
    int bb(int b);
    int main()
    {
        int a/*输入数据*/,b/*总位数*/,c=1/*媒介*/,d[10]={1,1,1,1,1,1,1,1,1,1}/*各个位上的数字*/,e/*媒介*/,f/*总位数*/;
        scanf("%d",&a);
            /*总位数*/
        for(b=0;a/c>=10;b++)
            {
                c=pow(10,b);
            }
            f=b;
            /*各个位上的数字*/
        for(b;b>0;b--)
        {
            d[b]=a/pow(10,b-1);
            e=pow(10,b-1);
            c=a%e;
            a=c;
        }
        /*输出*/
        if(f==0)    printf("a");
        else if(f%100000000==0) {  
                        bb(f/100000000);
                    printf("Y");
                }
        else
            for(f;f>0;f--)
            {
                if(d[f]!=0)
                    if(d[f+1]==0)
                    {
                        printf("a");
                        bb(d[f]);
                        aa(f);
                    }          
                    else
                    {  
                        bb(d[f]);
                        aa(f);
                    }
                else if(f==5)   printf("W");
            }      
    }
    int aa(int a)
    {
        switch(a)
            {
                case 1: printf("");break;
                case 2: printf("S");break;
                case 3: printf("B");break;
                case 4: printf("Q");break;
                case 5: printf("W");break;
                case 6: printf("S");break;
                case 7: printf("B");break;
                case 8: printf("Q");break;
                case 9: printf("Y");break;
         }
    }
    int bb(int b)
    {
        switch(b)
                        {
                            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;
                        }
    }
    2.设计思路(流程图)
    3.运行结果图
    本题我没有在规定时间提交,现在补在这里。
  • 相关阅读:
    PAT 解题报告 1009. Product of Polynomials (25)
    PAT 解题报告 1007. Maximum Subsequence Sum (25)
    PAT 解题报告 1003. Emergency (25)
    PAT 解题报告 1004. Counting Leaves (30)
    【转】DataSource高级应用
    tomcat下jndi配置
    java中DriverManager跟DataSource获取getConnection有什么不同?
    理解JDBC和JNDI
    JDBC
    Dive into python 实例学python (2) —— 自省,apihelper
  • 原文地址:https://www.cnblogs.com/ct1314/p/10402846.html
Copyright © 2011-2022 走看看