一、问题描述:
让我们用字母 B
来表示“百”、字母 S
表示“十”,用 12...n
来表示不为零的个位数字 n
(<10),换个格式来输出任一个不超过 3 位的正整数。例如 234
应该被输出为 BBSSS1234
,因为它有 2 个“百”、3 个“十”、以及个位的 4。
输入格式:
每个测试输入包含 1 个测试用例,给出正整数 n(<1000)。
输出格式:
每个测试用例的输出占一行,用规定的格式输出 n。
二、设计思路:
- 输入正整数n;
- 将各位上的数字存入数组中;
- 百位上的数字用循环只要大于0就输出“B”,该位数字减一,十位同理输出"S“,个位需要设立一个数字从1递增输出。
三、代码实现:
1 #include <iostream> 2 using namespace std; 3 int main() 4 { 5 int n; 6 int a[3]={0}; 7 cin>>n; 8 for(int i=0;n>0;i++) 9 { 10 a[i]=n%10; 11 n/=10; 12 } 13 while(a[2]>0) 14 { 15 cout<<"B"; 16 a[2]--; 17 } 18 while(a[1]>0) 19 { 20 cout<<"S"; 21 a[1]--; 22 } 23 for(int j=1;a[0]>0;j++,a[0]--) 24 { 25 cout<<j; 26 } 27 cout<<endl; 28 return 0; 29 }
标签:输出,PTA1006,数字,10,int,换个,C++,cout0,格式 From: https://www.cnblogs.com/tljx-cen/p/17357075.html