zoukankan      html  css  js  c++  java
  • 2018寒假作业5

     币值转换 (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<string.h>
    int main(void)
    {
    char s[10];
    int l,len,i,j;
    gets(s);
    len=strlen(s);
    l=len;
    if(len==1&&s[0]=='0')
    printf("a");
    for(i=0;i<len;i++,l--)
    {
    char c=s[i];
    switch(c)
    {
    case '0':c='a';break;
    case '1':c='b';break;
    case '2':c='c';break;
    case '3':c='d';break;
    case '4':c='e';break;
    case '5':c='f';break;
    case '6':c='g';break;
    case '7':c='h';break;
    case '8':c='i';break;
    case '9':c='j';break;
    default:break;
    }
    if(c=='a')
    {
    if(l==5)
    {
    if(s[i-1]!='0'||s[i-2]!='0'||s[i-3]!='0')
    printf("W");
    }
    else
    {
    for(i++,l--;i<len;i++,l--)
    {
    if(s[i]=='0')
    {
    if(l==5)
    {
    if(s[i-1]!='0'||s[i-2]!='0'||s[i-3]!='0')
    printf("W");
    }
    }
    else
    {
    printf("a");
    i--;
    l++;
    break;
    }
    }
    }
    }
    else
    {
    printf("%c",c);
    switch(l)
    {
    case 9:printf("Y");break;
    case 8:printf("Q");break;
    case 7:printf("B");break;
    case 6:printf("S");break;
    case 5:printf("W");break;
    case 4:printf("Q");break;
    case 3:printf("B");break;
    case 2:printf("S");break;
    default:break;
    }
    }
    }
    return 0;
    }

    错误截图

    遇到了很多问题,考虑特殊情况麻烦吧,写到最后,甚至觉得笔者是来搞笑的。解决方法:问了室友,我俩都不会,然后一起讨论了没学的知识,结果。。emmm,借鉴大佬。。。

    设计思路:要输入一个不超过9位数的非负整数,易知一种case,输入的数字位数为1位,数字0~9,对应输出a~j,

                      用拾,百,仟,万,亿拼音的首字母代表位数,分别为S,B,Q,W,Y。

    字母i,i从a~j,i++,位数是l--,考虑特殊情况

    运行结果截图

  • 相关阅读:
    day11.初识函数
    day10.文件操作
    类,对象相关的部分系统函数
    网络资源
    mysql 设置默认时间为now()
    Meta http-equiv属性详解
    php 验证码
    php 图片上传 并返回上传文件位置 支持多文件上传
    图片懒加载
    mysqy 特别小点
  • 原文地址:https://www.cnblogs.com/Markming/p/10410901.html
Copyright © 2011-2022 走看看