• 货币转换


    (1)实验代码:

    #include<stdio.h>
    main()
    {
    int n;

    scanf("%d",&n);

    if(n==0)
    {
    printf("a");
    }

    int i=0,N=n;

    while(n!=0)
    {
    n=n/10;
    i++;
    }

    int a[i];

    n=i;

    for(i=0;i<n;i++)
    {
    a[i]=N%10;
    N=N/10;
    }

    char s[n];

    int b;

    int c=n-1;
    if(N<10)
    for(i=n-1;i>=0;i--)
    {
    b=a[i]-0;
    s[i]='a'+b;

    if(a[i]==0&&c>=5&&i==4)
    printf("W");

    if(a[i]==0)
    {
    for(n=i;n>=0;n--)
    if(a[n]>0)
    {
    break;
    }
    continue;
    }
    if(a[i+1]==0&&a[i]!=0&&i!=c)
    {
    printf("a");
    }

    printf("%c",s[i]);

    if(a[i]!=0)

    switch(i)
    {
    case 8:
    printf("Y");
    break;
    case 7:
    printf("Q");
    break;
    case 6:
    printf("B");
    break;
    case 5:
    printf("S");
    break;
    case 4:
    printf("W");
    break;
    case 3:
    printf("Q");
    break;
    case 2:
    printf("B");
    break;
    case 1:
    printf("S");
    case 0:
    break;
    }
    }
    }

    (2)设计思路:

    第一步:判断输入的数是否为0.

    第二步:若不为0则运用数组和while来记录字母,并且判断数字是否在万后面或者全部为0,列出式子做出判断.

    第三步:输出字符.

    运行结果截图:

    本题解决方案:1:本来一开始一直无法通过检测,后面问了一个朋友,他给了我一个数据去测量了一下,让我发现无法打印出如:3亿这样的数字,然后重新去检查了代码,并且对比了网上的代码差别,找到了缺少的一部分

  • 相关阅读:
    BZOJ 3260: 跳 (组合恒等式)
    BZOJ 1924 [SDOI 2010] 所驼门王的宝藏 (优化建图+tarjan+最长链)
    BZOJ 3451Normal (点分治+FFT)
    BZOJ 2213: [Poi2011]Difference (DP)
    BZOJ 3251 树上三角形 (暴力)
    [HNOI2008]明明的烦恼
    HDU 1521 排列组合
    [HNOI2008]神奇的国度
    [HNOI2008]遥远的行星
    [HNOI2001]软件开发
  • 原文地址:https://www.cnblogs.com/2293002826PYozo/p/10404238.html
Copyright © 2020-2023  润新知