首页 > 其他 > 详细

pat1005

时间:2014-02-23 03:04:46      阅读:256      评论:0      收藏:0      [点我收藏+]

bubuko.com,布布扣

题目分析:该题比较简单,对输入的整数各位数相加,对应的和的每一位以英文形式输出,注意10100该数值较大,超出int型和long long型的表示范围,考虑用字符串接收后在转换为int型,不要遗漏掉特殊情况,比如和为0的时候。

源代码如下:

bubuko.com,布布扣
    #include<iostream>
    #include<string>
    using namespace std;
//输出转换函数,将数字转换为对应英文,注意端点对输出格式的要求
string trans(int a){ switch(a){ case 1: return "one"; case 2: return "two"; case 3: return "three"; case 4: return "four"; case 5: return "five"; case 6: return "six"; case 7: return "seven"; case 8: return "eight"; case 9: return "nine"; case 0: return "zero"; } } int main(){ string str1; cin>>str1; int sum=0; int buf[5],pos=0; for(int i=0;i<str1.length();i++){ sum=sum+str1[i]-0; } if(sum==0) buf[0]=0; while(sum!=0){ buf[pos++]=sum%10; sum=sum/10; } for(int i=pos-1;i>0;i--){ cout<<trans(buf[i])<<" "; } cout<<trans(buf[0]); return 0; }
bubuko.com,布布扣

pat1005

原文:http://www.cnblogs.com/lazyboy-yan/p/3560978.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!