写出这个数

对于这题来说,刚开始思路是对的,过程也是对的,但是小错误太多了。

#include<bits/stdc++.h>
using namespace std;
int main()
{
   string s;
   cin>>s;
   int sum=0;
   for(int i=0;s[i]!='\0';i++)
   {
       sum+=s[i]-'0';
   }
   string s1[10]={"ling","yi","er","san","si","wu","liu","qi","ba","jiu"};
   int num[100]={0};
   int z=0;
   while(sum>0)
   {
       num[z]=sum%10;
       sum/=10;
       z++;
   }
   int flag=0;
   for(int i=z-1;i>=0;i--)
   {
       if(flag)
        cout<<" ";
        cout<<s1[num[i]];
       flag=1;
   }
    return 0;
}

首先s1的元素没写完,二是把z=0,放到while循环里了,三是这步cout<<s1[num[i]]; 开始没写对。

总结:不要当过每个细节,努力做好每一步。

猜你喜欢

转载自blog.csdn.net/wchenchen0/article/details/79992377