PAT乙級1002寫出這個數
阿新 • • 發佈:2018-12-20
題目描述: 讀入一個正整數 n,計算其各位數字之和,用漢語拼音寫出和的每一位數字。
輸入格式: 每個測試輸入包含 1 個測試用例,即給出自然數 n 的值。這裡保證 n 小於 10 100 。
輸出格式: 在一行內輸出 n 的各位數字之和的每一位,拼音數字間有 1 空格,但一行中最後一個拼音數字後沒有空格。
輸入樣例: 1234567890987654321123456789 輸出樣例: yi san wu
程式碼如下:
#include <iostream>
#include<string>
using namespace std;
int main()
{
string s;
cin>>s;
int sum=0;
string str[10]={"ling","yi","er","san","si","wu","liu","qi","ba","jiu"}; //哪的下標對應漢字哪裡
for(int i=0;i<s.length();i++)
{
s[i]-='0';
sum+=s[i];
}
string num=to_string(sum); //再將sum轉化為string型別的num
for(int i=0;i< num.length();i++)
{
if(i!=0)
cout<<" ";
num[i]-='0';
cout<<str[num[i]];
}
return 0;
}
來總結一下: 1)to_string()很適用,將int 轉化為string.