PAT-1005 Spell It Right (20)

xiaoxiao2021-02-28  22

题目大意:求给串的各位数之和,然后按照规定输出 和的各位。

解题思路:都很简单,唯一要注意的细节是 样例 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); 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; }
转载请注明原文地址: https://www.6miu.com/read-2628844.html

最新回复(0)