http://pat.zju.edu.cn/contests/pat-b-practise/1006
讓我們用字母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 <stdio.h>
#include <stdlib.h>
#include <string.h>
char inStr[3+1];
char outStr[30+1];
int num[3] = {0, 0, 0}; // num[0], num[1], num[2]分別對應百,十,個位上的數字
int main()
{
gets(inStr);
int len = strlen(inStr);
int i, j;
// 這段代碼舉例子看看就明白了
for (i = 0, j = 3-len; i < len; i++, j++)
{
num[j] = inStr[i] - '0';
}
for (i = 0; i < num[0]; i++)
{
printf("B");
}
for (i = 0; i < num[1]; i++)
{
printf("S");
}
for (i = 1; i <= num[2]; i++)
{
printf("%d", i);
}
printf("\n");
return 0;
}