zoukankan      html  css  js  c++  java
  • PAT 1006 换个格式输出 C语言

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

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

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

    输入样例1:

    234
    

    输出样例1:

    BBSSS1234
    

    输入样例2:

    23
    

    输出样例2:

    SS123


     1 #include<stdio.h>
     2 #include<string.h>
     3 #define MAXN 9
     4 int c1[MAXN];
     5 char c2[MAXN];
     6 char c3[MAXN];
     7 int main()
     8 {
     9     int i,j,tmp,j1,j2;
    10     char shi,bai;
    11     scanf("%d",&i);
    12 
    13     j = i % 10;
    14     tmp = 0;
    15     shi = 'S';
    16     bai = 'B';
    17     
    18     memset(c1,0,sizeof(c1));
    19     memset(c2,0,sizeof(c2));
    20     memset(c3,0,sizeof(c3));
    21 
    22     //个位数
    23     for(;tmp< j; tmp++){
    24         c1[tmp] = tmp+1;
    25     }
    26     //十位数
    27     if((j1 = i /10) > 0){
    28         j1 = j1 % 10;
    29         for(tmp = 0;tmp < j1; tmp++){
    30             c2[tmp] ='S';
    31         }
    32     }
    33     //百位数
    34     if((j2 = i / 100) > 0){
    35         for(tmp = 0;tmp < j2; tmp++){
    36             c3[tmp] = 'B';
    37         }
    38     }
    39     
    40     //输出
    41     if(j2 > 0){
    42         for(tmp = 0; tmp < j2; tmp++){
    43             printf("%c",c3[tmp]);
    44         }
    45     }
    46     if(j1 > 0){
    47         for(tmp = 0; tmp < j1; tmp++){
    48             printf("%c",c2[tmp]);
    49         }
    50     }
    51     for(tmp = 0; tmp < 9; tmp++){
    52             if(c1[tmp] == 0) break;
    53             printf("%i",c1[tmp]);
    54         } 
    55 
    56     return 0;
    57 }
  • 相关阅读:
    Vue图片国际化
    lambda表达式
    1
    JSPday11
    JSPday10
    JSPday09
    JSPday08
    JSPday07
    JSPday23 预留
    JSPday05(Servlet)
  • 原文地址:https://www.cnblogs.com/fyymonica/p/3694556.html
Copyright © 2011-2022 走看看