PAT乙級1002 寫出這個數 (20分)
阿新 • • 發佈:2020-12-09
PAT乙級1002 寫出這個數 (20分)
讀入一個正整數 n,計算其各位數字之和,用漢語拼音寫出和的每一位數字。
輸入格式:
每個測試輸入包含 1 個測試用例,即給出自然數 n 的值。這裡保證 n 小於 10
100
。
輸出格式:
在一行內輸出 n 的各位數字之和的每一位,拼音數字間有 1 空格,但一行中最後一個拼音數字後沒有空格。
#include <stdio.h> #include <string.h> #include <stdlib.h> int main() { char s[105]={}; char* str[10] = {"ling","yi","er","san","si","wu","liu","qi","ba","jiu"}; int sum = 0; scanf("%s",s); for(int i=0;i<strlen(s);i++) { sum=sum+(s[i]-'0'); } int s2[4]={}; int l = 0; while(sum!=0) { s2[l++] = sum%10; sum /= 10; } for(int i=l-1; i >=0 ; i--) { if(i != l-1) printf(" "); printf("%s",str[s2[i]]); } }