您的位置:首页 > 其它

PAT Basic Level 1002. 写出这个数 (20)

2014-03-13 15:25 441 查看
【来源】

1002. 写出这个数 (20)

【分析】

先计算各位数字之和,然后分情况输出即可。

【代码】

#include <iostream>
#include <string>
using namespace std;

int main()
{
string s;
cin >> s;

int sum = 0;
for (int i = 0; i < s.size(); ++i){
int digit = s[i]-'0';
sum += digit;
}

const string pinyin[10] = {"ling", "yi", "er", "san", "si", "wu",
"liu", "qi", "ba", "jiu"};

if (sum >= 100)
{
int bai = sum / 100;
int shi = (sum - 100 * bai)/10;
int ge = sum % 10;
cout << pinyin[bai] << " " << pinyin[shi] << " " << pinyin[ge] << endl;
}

else if (sum >= 10)
{
int shi = sum / 10;
int ge = sum % 10;
cout << pinyin[shi] << " " << pinyin[ge] << endl;
}

else{
cout << pinyin[sum] << endl;
}

return 0;
}【点评】
本题为简单题。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  PAT