现在的位置: 首页 > 综合 > 正文

【PAT Advanced Level】1005. Spell It Right (20)

2019年03月01日 ⁄ 综合 ⁄ 共 461字 ⁄ 字号 评论关闭

本题要用字符串或者字符数组保存输入,不然会越界。

还有就是本题中int转string使用了stringstream。

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


string eng[10] = {"zero", "one", "two", "three", "four", "five",  
	"six", "seven", "eight", "nine"};

int main()
{
	string s;
	cin>>s;
	int total = 0;
	for(string::iterator it = s.begin(); it != s.end(); it++)
		total += *it - '0';
	
	stringstream ss;
	ss<<total;
	string o;
	ss>>o;
	for(string::iterator it = o.begin(); it != o.end(); it++)
	{
		if(it != o.begin())
			cout<<" ";
		cout<<eng[*it - '0'];
	}
	cout<<endl;
}

抱歉!评论已关闭.