这题也不是很难,我觉得用char型数组存储数更简单。
#include<stdio.h>
#include<string.h>
int main() {
char num[4];
scanf("%s", num);
int n;
n = strlen(num);
if (n == 3) {
int b = (int)num[0]-48;//百位
int s = (int)num[1]-48;//十位
int g = (int)num[2]-48;//个位
for (int i = 0; i < b; i++) {
printf("B");
}
for (int i = 0; i < s; i++) {
printf("S");
}
for (int i = 0; i < g; i++) {
printf("%d",i+1);
}
}
if (n == 2) {
int s = (int)num[0] - 48;//十位
int g = (int)num[1] - 48;//个位
for (int i = 0; i < s; i++) {
printf("S");
}
for (int i = 0; i < g; i++) {
printf("%d", i + 1);
}
}
if (n == 1) {
int g = (int)num[0] - 48;//个位
for (int i = 0; i < g; i++) {
printf("%d", i + 1);
}
}
return 0;
}