码迷,mamicode.com
首页 > 其他好文 > 详细

PAT B1006 换个格式输出整数

时间:2019-08-24 10:11:07      阅读:91      评论:0      收藏:0      [点我收藏+]

标签:ace   正整数   ***   指定   bss   超过   return   数字   ret   

PAT B1006 换个格式输出整数

题目描述:

  让我们用字母 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 /****************************************************
 2 PAT B1006 换个格式输出整数
 3 ****************************************************/
 4 #include <iostream>
 5 
 6 using namespace std;
 7 
 8 //将数字n按照指定格式输出
 9 void printNewNum(int n) {
10     //拆分数字n的每一位
11     int deciNum[3]{ 0 };             //存储n的每一位的数值
12     for (int i = 0; i < 3; ++i) {
13         deciNum[2 - i] = n % 10;
14         n /= 10;
15     }
16     
17     //按新的格式进行输出
18     if (deciNum[0] != 0) {
19         for (int i = 0; i < deciNum[0]; ++i) cout << B;
20     }
21     if (deciNum[1] != 0) {
22         for (int i = 0; i < deciNum[1]; ++i) cout << S;
23     }
24     if (deciNum[2] != 0) {
25         for (int i = 1; i <= deciNum[2]; ++i) cout << i;
26     }
27 }
28 
29 int main() {
30     int num = 0;
31 
32     cin >> num;
33 
34     printNewNum(num);
35 
36     return 0;
37 }

注意事项:

  无。

PAT B1006 换个格式输出整数

标签:ace   正整数   ***   指定   bss   超过   return   数字   ret   

原文地址:https://www.cnblogs.com/mrdragon/p/11403318.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!