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

让我们用字母B来表示“百”、字母 S表示“十”,用12...n 来表示不为零的个位数字 n(<10),换个格式来输出任一个不超过 3 位的正整数。例如 234应该被输出为 BBSSS1234,因为它有 2 个“百”、3 个“十”、以及个位的 4。
输入格式:
每个测试输入包含 1 个测试用例,给出正整数 n(<1000)。
输出格式:
每个测试用例的输出占一行,用规定的格式输出 n。
输入样例 1:
234
输出样例 1:
BBSSS1234
输入样例 2:
23
输出样例 2:
SS123

代码:

#include
#include

using namespace std;

int main(){
    int n,tag=0,k=1,a[50]={0}; cin>>n;//读取n的值 
    while(n!=0){
        a[tag]=(n%10);
        tag+=1; 
        n/=10;
    }
    for(int i=tag;i>=0;i--){
        if(i==2){//注意这里非常容易出错,因为数组的下标是从0~1的
        //所以在输出个十百位的时候也要按照数组的下标来输出,这样才不会出错  
        //---***如果怕出错,建议统一数组的下标***---
            while(a[i]--){
                cout<<'B';
            }
        }
        else if(i==1){
            while(a[i]--){
                cout<<'S';
            }
        }
        else if(i==0){
            while(a[i]--){
                cout<

你可能感兴趣的:(1006 换个格式输出整数 (15 分))