题目描述
思路
这个题很简单,百位上是几,就输出一个B;十位上是几,就输出几个S;个位是几,就输出1到几。
我们用这个数%10的各个数放在数组中,然后输出就行了。
代码
#include <stdio.h> int main() { int n=0,i=0,b=0; int arr[3]={0}; scanf("%d", &n); while (n)//获得n的每一位 { arr[i] = n % 10; n /= 10; i++; } while (i!=-1)//保证0也可以 { switch (i) { case 2: while (arr[i]) { printf("B"); arr[i]--; } break; case 1: while (arr[i]) { printf("S"); arr[i]--; } break; case 0: for (b = 1; b <= arr[i]; b++) printf("%d", b); break; } i--; } return 0; }