zoukankan      html  css  js  c++  java
  • 1006 换个格式输出整数 (15)(15 分)

    1006 换个格式输出整数 (15)(15 分)

    让我们用字母B来表示“百”、字母S表示“十”,用“12...n”来表示个位数字n(&lt10),换个格式来输出任一个不超过3位的正整数。例如234应该被输出为BBSSS1234,因为它有2个“百”、3个“十”、以及个位的4。

    输入格式:每个测试输入包含1个测试用例,给出正整数n(&lt1000)。

    输出格式:每个测试用例的输出占一行,用规定的格式输出n。

    输入样例1:

    234
    

    输出样例1:

    BBSSS1234
    

    输入样例2:

    23
    

    输出样例2:

    SS123
    

    AC代码

    /*这个代码可以实现,准确地将每一位数取出,而且下标高高低低,下标大对应位数高,num记录这个数字的位数*/
    	int num = 0, ans[5];
        while(n != 0) {
            ans[num] = n % 10;
            num++;
            n = n / 10;
        }
    
    #include <stdio.h>
    int main() {
        int n;
        scanf("%d", &n);
        int num = 0, ans[5];
        while(n != 0) {
            ans[num] = n % 10;
            num++;
            n = n / 10;
        }
        for(int i = num - 1; i >= 0; i--) {
            if(i == 2) {
                for(int j = 0; j < ans[i]; j++){
                    printf("B");
                }
            } else if(i == 1) {
                for(int j = 0; j < ans[i]; j++){
                    printf("S");
                }
            } else {
                for(int j = 1; j <= ans[i]; j++){
                    printf("%d", j);
                }
            }
        }
        return 0;
    }
    

    更优化的版本

    #include <stdio.h>
    int main() {
        int n;
        scanf("%d", &n);
        int i = 0, ans[5];
        while(n != 0) {
            ans[i++] = n % 10;
            n = n / 10;
        }
        for(int j = 0; j < ans[2]; j++)
          printf("B");
        for(int j = 0; j < ans[1]; j++)
          printf("S");
        for(int j = 1; j <= ans[0]; j++)
            printf("%d", j);
        return 0;
    }
    
  • 相关阅读:
    win10 uwp 弹起键盘不隐藏界面元素
    win10 uwp 存放网络图片到本地
    win10 uwp 存放网络图片到本地
    sublime Text 正则替换
    sublime Text 正则替换
    win10 uwp 绘图 Line 控件使用
    win10 uwp 绘图 Line 控件使用
    AJAX 是什么?
    什么是 PHP SimpleXML?
    PHP XML DOM:DOM 是什么?
  • 原文地址:https://www.cnblogs.com/lingr7/p/10298256.html
Copyright © 2011-2022 走看看