我的PAT系列文章更新重心已移至Github功炮,歡迎來看PAT題解的小伙伴請到Github Pages瀏覽最新內(nèi)容。此處文章目前已更新至與Github Pages同步。歡迎star我的repo闻镶。
題目
讓我們用字母 B
來表示“百”、字母 S
表示“十”丸升,用 12...n
來表示不為零的個位數(shù)字 n
(
)铆农,換個格式來輸出任一個不超過 3 位的正整數(shù)。例如 234
應(yīng)該被輸出為 BBSSS1234
狡耻,因為它有 2 個“百”墩剖、3 個“十”、以及個位的
4夷狰。
輸入格式:
每個測試輸入包含 1 個測試用例岭皂,給出正整數(shù) ( )。
輸出格式:
每個測試用例的輸出占一行沼头,用規(guī)定的格式輸出 爷绘。
輸入樣例 1:
234
輸出樣例 1:
BBSSS1234
輸入樣例 2:
23
輸出樣例 2:
SS123
思路
合理運(yùn)用循環(huán)條件,可以寫出簡潔的代碼进倍。
題目限制整數(shù)的位數(shù)最多三位土至,那么可以提取三位上的數(shù)字就可以了。某一位為0背捌,那么循環(huán)根本不會執(zhí)行毙籽,因此也不需要寫額外的判斷語句。
代碼
最新代碼@github毡庆,歡迎交流
#include <stdio.h>
int main()
{
int n;
scanf("%d", &n);
for(int i = 0; i < n / 100; i++) putchar('B');
for(int i = 0; i < n / 10 % 10; i++) putchar('S');
for(int i = 0; i < n % 10; i++) putchar('1' + i);
return 0;
}