PAT 甲级 1005. Spell It Right (20)

#include<iostream>
#include<string>
#include<stack>
#include<map>
using namespace std;
stack<int> p1;
map<int,string> p2;
int main()
{
	int sum=0,z=0;
	p2[0]="zero",p2[1]="one",p2[2]="two",p2[3]="three",p2[4]="four",
	p2[5]="five",p2[6]="six",p2[7]="seven",p2[8]="eight",p2[9]="nine";
	string s1;
	string s2;
	cin>>s1;
	for(int i=0;i<s1.size();i++)
		sum+=s1[i]-'0';
	if(sum!=0)
	{
		while(sum)
		{
			s2[z++]=sum%10+'0';
			sum/=10;
		}
		for(int i=z-1;i>=0;i--)
		{
			cout<<p2[s2[i]-'0'];
			if(i!=0)
				cout<<" ";
		}
	}
	else
		cout<<"zero";
	return 0;
} 

发布了45 篇原创文章 · 获赞 1 · 访问量 6770

猜你喜欢

转载自blog.csdn.net/Ls_attack/article/details/79822810