pat 乙级 1002. 写出这个数 (20)

来源:互联网 发布:nga178魔兽世界数据库 编辑:程序博客网 时间:2024/05/20 18:18


解题思路:由于小于10的100次方 所以 和肯定不会超过 9*100;所以也就是三位数的sum;


代码:


#include <iostream>#include<string.h>#include<cmath>using namespace std;// 解题思路 由于10的100次方 所以 和肯定不会超过 9*100;所以也就是三位数的sum;string cha[10]={"ling","yi","er","san","si","wu","liu","qi","ba","jiu"};int main(){   char a[105];int sum=0;cin>>a;for (int i=0;i<strlen(a) ;i++ ){   sum+=a[i]-48;            //  求和 }if (sum>=0&&sum<10){cout<<cha[sum]<<endl;}else if(sum<100) {int ge=sum%10;int shi=sum/10;cout<<cha[shi]<<" "<<cha[ge]<<endl;}else { int num1=sum%10; int num2=sum%100/10; int num3=sum/100; cout<<cha[num3]<<" "<<cha[num2]<<" "<<cha[num1]<<endl;}return 0;}


原创粉丝点击