题目链接:1006 换个格式输出整数 (15 分)
#include<iostream>
using namespace std;
int main()
{
int a,i=0;
cin>>a;
int b[3]={0};
while(a!=0)
{
b[i++]=a%10;
a/=10;
}
for(int i=0;i<b[2];i++)cout<<"B";
for(int i=0;i<b[1];i++)cout<<"S";
for(int i=1;i<=b[0];i++)cout<<i;
return 0;
}
也可以用最简单的方式
#include<iostream>
using namespace std;
int main()
{
int n;
cin>>n;
int a=n/100;
int b=n%100/10;
int c=n%10;
for(int i=0;i<a;i++)
{
cout<<"B";
}
for(int i=0;i<b;i++)
{
cout<<"S";
}
for(int i=1;i<=c;i++)
{
cout<<i;
}
cout<<endl;
return 0;
}
方法三
#include<iostream>
using namespace std;
int main()
{
int n;
cin>>n;
int num=0,ans[5];
while(n!=0)
{
ans[num]=n%10;
num++;
n/=10;
}
for(int i=num-1;i>=0;i--)
{
if(i==2)
{
for(int j=0;j<ans[i];j++)
{
cout<<"B";
}
}
else if(i==1)
{
for(int j=0;j<ans[i];j++)
{
cout<<"S";
}
}
else{
for(int j=1;j<=ans[i];j++)
{
cout<<j;
}
}
}
return 0;
}