• PTA寒假二


    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 (void)
    {
    int n, value, value1, value2, sum=0, x, value3, qian=1000, y=0, jishuqi=0;
    scanf("%d", &n);
    value=n/100000000;
    if(value!=0){
    printf("%cY", 'a'+value); /输出亿位/
    }
    value1=n%100000000;
    value2=value1/10000; /得到万位数字/
    while(qian!=0){ /输出万位/
    if(value20){
    break;
    }
    x=value2/qian;
    value2=value2%qian;
    qian=qian/10;
    y++;
    if(value
    0&&x0){
    if(jishuqi!=1){
    continue;
    }
    }
    if(x
    0){
    sum++;
    if(sum<=1) {
    if(y!=4){
    printf("%c", 'a');
    }
    }
    }
    if(x!=0){
    sum=0;
    jishuqi=1;
    printf("%c", 'a'+x);
    switch(y){
    case 1: printf("Q"); break;
    case 2: printf("B"); break;
    case 3: printf("S"); break;
    }
    }
    }
    if(y!=0){
    printf("W"); /输出万位结束/
    }
    sum=0; /输出千位以下需要重新赋初始值,因为在万位运算的时候值变化了/
    qian=1000;
    y=0;
    jishuqi=0;
    value3=n%10000; /得到千以及以下数字/
    while(qian!=0){
    x=value3/qian;
    value3=value3%qian;
    qian=qian/10;
    y++;
    if((n%100000000)/100000&&x0){
    if(jishuqi!=1){
    continue;
    }
    }
    if(value3!=0){
    if(x==0){
    sum++;
    if(sum<=1) {
    printf("%c", 'a');
    }
    }
    }
    if(x!=0){
    sum=0;
    jishuqi=1;
    printf("%c", 'a'+x);
    switch(y){
    case 1: printf("Q"); break;
    case 2: printf("B"); break;
    case 3: printf("S"); break;
    }
    }
    }
    printf("%c", 'a');
    }
    }
    思路
    其实就是从高位往低位来判断位数;
    定义变量,然后判断即可;

    (3)本题调试过程碰到问题及解决办法
    问题:不知道用什么写
    解决方法:问同学,自己慢慢思索,然后查资料

  • 相关阅读:
    块存储、文件存储、对象存储的区别
    brk 和 sbrk 区别
    【转】海量数据处理:十道面试题与十个海量数据处理方法总结
    C++ STL 里为什么不维护一个 size 成员变量?
    C++对象内存分布详解(包括字节对齐和虚函数表)
    虚函数实现原理
    关于Ubuntu中Could not get lock /var/lib/dpkg/lock解决方案
    Jerasure 1.2A 中的 C 函数 tips
    C++ qsort() 函数调用时实参与形参不兼容的问题解决
    C语言位运算符:与、或、异或、取反、左移与右移详细介绍
  • 原文地址:https://www.cnblogs.com/huangxing123/p/10345526.html
Copyright © 2020-2023  润新知