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()
    {
    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'};
    char result[17];
    int x,k=0,bitnum=0,cur,pre;
    scanf("%d",&n);
    if(!x)
    {
    printf("a");

    return 0;
    }
    while(x)
    {
    cur=n%10;
    x/=10;
    bitnum++;
    if(cur)
    {
    if(bitnum>1)
    result[k++]=unit[bitnum];
    result[k++]=num[cur];
    }
    else
    {
    if(bitnum==5)
    result[k++]=unit[bitnum];
    else if(pre!=0&&bitnum!=4&&bitnum!=1)
    result[k++]=num[cur];
    }
    pre=cur;
    }
    for(int i=k-1;i>=0;i--)
    printf("%c",result[i]);

    return 0;
    }

    设计思路:
    1、定义函数
    首先用两个数组来表示数字和单位,并把函数要用的变量都定义上。
    2、判断变量x的值,用while函数。
    3、检查0是否符合中文习惯,这个很重要。
    4、将转换好的进行输出。

    问题及解决方案:
    问题:数组上学期只是初略的讲了一遍,很多都不懂。
    方案:翻阅了C语言程序设计第7章的内容,希望老师上课时多讲一讲。

    运行结果截图:

  • 相关阅读:
    【协议分析】Wireshark 过滤表达式实例
    学习Javascript闭包(Closure)
    如何解决 touchstart 事件与 click 事件的冲突
    JS实现控制HTML5背景音乐播放暂停
    $.ajax()方法详解
    js将汉字转为相应的拼音
    js 滚动到一定位置导航定位在页面最顶部
    javascript获取网页地址栏的id
    jquery 上传图片转为base64,ajax提交到后台
    jquery 图片转为base64
  • 原文地址:https://www.cnblogs.com/qiuf99999/p/10453594.html
Copyright © 2011-2022 走看看