• pta编程总结2


    7-1 币值转换 (20 分)
    输入一个整数(位数不超过9位)代表一个人民币值(单位为元),请转换成财务要求的大写中文格式。如23108元,转换后变成“贰万叁仟壹百零捌”元。为了简化输出,用小写英文字母a-j顺序代表大写数字0-9,用S、B、Q、W、Y分别代表拾、百、仟、万、亿。于是23108元应被转换输出为“cWdQbBai”元。
    代码:#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(x0){
    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;
    }
    }
    }
    if(n
    0){
    printf("%c", 'a');
    }
    }

    问题:自己做完全看不懂,我在dev-c做了一阵子根本不会,看了别人的,完全有的地方就懵了。仔细看了,设计思路大概也就是if与while联合使用,没有for,但是要想真搞明白还是有问题。
    结果:

  • 相关阅读:
    Requests
    探索式测试(概念)
    IDEA_Java+maven+selenium3+testng自动化测试环境安装
    RobotFramework Formate
    Robot Framework_dictionary search
    Git
    配置robotframework框架的自动化环境
    Python学习之路
    对 Jenkins+ANT+Jmeter 接口测试的实践
    自动生成测试脚本方案浅析
  • 原文地址:https://www.cnblogs.com/xzsx/p/10411889.html
Copyright © 2020-2023  润新知