欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

PAT乙级题目——1002写出这个数

发布时间:2023/12/4 编程问答 57 豆豆
生活随笔 收集整理的这篇文章主要介绍了 PAT乙级题目——1002写出这个数 小编觉得挺不错的,现在分享给大家,帮大家做个参考.



问题分析:1.数据比较大,并且输入数据时没有停顿,所有使用字符串来存储数据

string str=""; cin>>str;

2.使用字符串数组来存储每个数字的拼音

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

3.从后往前得到数据的每位数,使用栈来逆序存储一下

栈的操作 入栈 stack.push(); 出栈 stack.pop();

4.注意输出格式

完整的代码:

#include<iostream> #include<stack> using namespace std; typedef long long ll; string str=""; string S[10]={"ling","yi","er","san","si","wu","liu","qi","ba","jiu"}; stack<int> mystack; int main(){cin>>str;ll num=str.size();ll ans=0;for(ll i=0;i<num;i++){ans+=str[i]-'0';}//从各位向前 一位一位的输出 while(ans){mystack.push(ans%10);ans=ans/10; }cout<<S[mystack.top()];mystack.pop();while(!mystack.empty()){cout<<" ";cout<<S[mystack.top()];mystack.pop();}}

总结

以上是生活随笔为你收集整理的PAT乙级题目——1002写出这个数的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。