1. 程式人生 > 其它 >C _ PAT B1002 寫出這個數

C _ PAT B1002 寫出這個數

技術標籤:C _ PAT Basic Level

題目描述

讀入一個正整數 n,計算其各位數字之和,用漢語拼音寫出和的每一位數字。

輸入格式:

每個測試輸入包含 1 個測試用例,即給出自然數 n 的值。這裡保證 n 小於 1 0 100 10^{100} 10100

輸出格式:

在一行內輸出 n 的各位數字之和的每一位,拼音數字間有 1 空格,但一行中最後一個拼音數字後沒有空格。

輸入樣例:

1234567890987654321123456789

輸出樣例:

yi san wu

程式碼

#include <stdio.h>
#include <string.h>

int
main(void) { char s[100]; char py[10][5] = {"ling", "yi", "er", "san", "si", "wu", "liu", "qi", "ba", "jiu"}; int digits[10]; int sum = 0; int length; int
i; scanf("%s", s); length = strlen(s); for (i = 0; i < length; i++) sum += s[i] - '0'; length = 0; while (sum) { digits[length++] = sum % 10; sum /= 10; } for (i = length - 1; i >= 0; i--) { printf("%s", py[digits[i]]); if
(i) printf(" "); else printf("\n"); } return 0; }