您的位置:首页 > 其它

PAT-1005 Spell It Right (20)

2018-02-18 21:46 477 查看
题目大意:求给串的各位数之和,然后按照规定输出 和的各位。
解题思路:都很简单,唯一要注意的细节是 样例 0 的情况。
题目链接:https://www.patest.cn/contests/pat-a-practise/1005#include <iostream>
#include <algorithm>
#include <set>
#include <map>
#include <vector>
#include <stack>
#include <queue>
#include <cmath>
using namespace std;

void trans(int x)
{
switch(x)
{
case 1:printf("one");break;
case 2:printf("two");break;
case 3:printf("three");break;
case 4:printf("four");break;
case 5:printf("five");break;
case 6:printf("six");break;
case 7:printf("seven");break;
case 8:printf("eight");break;
case 9:printf("nine");break;
case 0:printf("zero");break;
}
}
int main(int argc, char** argv) {
char str[105];
stack<int> s;
int sum = 0;
scanf("%s",str);
for(int i=0;str[i]!='\0';++i)
{
sum += str[i]-'0';
}
do{
s.push(sum%10);
sum /= 10;
}while(sum != 0);

bool flag = true;
while(!s.empty())
{
if(flag == true)
{
trans(s.top());
flag = false;
}
else
{
cout<<" ";
trans(s.top());
}
s.pop();
}
cout<<endl;
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: