PAT (Basic Level) 刷题-1002:读入一个正整数 n,计算其各位数字之和,用汉语拼音写出和的每一位数字

搞了很长时间,第二个测试就是过不去

好想知道他的测试用例是啥啊!!!!!郁闷

跪求好心人斧正!!!

 

PAT (Basic Level) 刷题-1002:读入一个正整数 n,计算其各位数字之和,用汉语拼音写出和的每一位数字

然后这是我的代码:

#include<iostream>

using namespace std;

int main()

{

string n;

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

while(cin>>n)

{

int cnt=0;

int len=n.length();

for(int j=0;j<len;j++)

cnt+=(n[j]-48);

if(cnt/100!=0)

cout << s[cnt / 100] << " ";

if(cnt/10%10!=0)

cout << s[cnt /10 % 10] << " ";

cout << s[cnt % 10]<<endl;

}

}

 

 

PAT (Basic Level) 刷题-1002:读入一个正整数 n,计算其各位数字之和,用汉语拼音写出和的每一位数字

p.s.看到有回答说测试用例求和之后,最大是一个五位数

这里我想反驳一下,说一下我的看法

十的一百次方最大是一后边一百个零,我们要求每一个位上的数字之和,那么就是小于十的一百次方的最大的整数:一百个九

一百个九的和是900,他是一个三位数,不是五位