PAT_乙_1002写出这个数

#include<stdio.h>
#include<iostream>
#include<string.h>
using namespace std;
void print(char c,bool flag)//flag == 0第一个
{
    if(flag == 0){
        switch(c)
        {
            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;

        }
    }
    else
    {
        switch(c)
        {
            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;
        }
    }
}

void display(int sum)
{
    char b[105];
    sprintf(b,"%d",sum);
    bool flag = 0;
    for(int i=0;i<strlen(b);i++){
        print(b[i],flag);
        flag=1;
    }
}
int main()
{
    char arr[105];
    while(~scanf("%s",arr))
    {
        int n = strlen(arr);
        int brr[105];
        int sum = 0;
        for(int i=0;i<n;i++){
            brr[i] = (int)arr[i]-48;
            sum += brr[i];
        }
        display(sum);
    }
    return 0;
}
发布了37 篇原创文章 · 获赞 4 · 访问量 1926

猜你喜欢

转载自blog.csdn.net/qq_41440031/article/details/104295058
今日推荐