PAT 1002 寫出這個數

 

 

 首先 n這個數很大 不可能用int long這種取存放ios

而是把它看做字符串 用字符數組去存數組

 

 其次 爲了代碼重用 另外構造函數函數

用switch語句 重溫switch語句的格式spa

 

 記得每一個語句後面添加break;code

附上完整代碼blog

#include <iostream>
#include <cstring>
using namespace std;

void num(int k)
{
        switch(k)
        {
            case 0:cout<<"ling"; break;
            case 1:cout<<"yi"; break;
            case 2:cout<<"er"; break;
            case 3:cout<<"san"; break;
            case 4:cout<<"si"; break;
            case 5:cout<<"wu"; break;
            case 6:cout<<"liu"; break;
            case 7:cout<<"qi"; break;
            case 8:cout<<"ba"; break;
            case 9:cout<<"jiu"; break;
        }
}
int main()
{
    int t=0,l,m,n;
    char x[101];
    cin>>x;
    int i=0;
    while(x[i]!='\0')
    {
        t+=x[i]-'0';
        i++;
    }
    l=t/100;
    m=(t-l*100)/10;
    n=t%10;
    if(l!=0)
    {
       num(l);
        cout<<" ";

        num(m);
        cout<<" ";
        num(n);
    }
    else if(m!=0)
    {
       num(m);
        cout<<" ";
        num(n);
    }
    else
        num(n);

}
相關文章
相關標籤/搜索