念数字

山东理工大学第一届团体程序设计天梯赛各班内组队选拔测试赛---3


290 分

  1. 编程题共 15 小题,共计 290 分

剩余时间: 30:03:10

剩余时间: 30:03:10

7-9 念数字(15 分)

输入一个整数,输出每个数字对应的拼音。当整数为负数时,先输出fu字。十个数字对应的拼音如下:

0: ling
1: yi
2: er
3: san
4: si
5: wu
6: liu
7: qi
8: ba
9: jiu

输入格式:

输入在一行中给出一个整数,如:1234

提示:整数包括负数、零和正数。

输出格式:

在一行中输出这个整数对应的拼音,每个数字的拼音之间用空格分开,行末没有最后的空格。如yi er san si

输入样例:

-600

输出样例:

fu liu ling ling

作者: 翁恺

单位: 浙江大学

时间限制: 400ms

内存限制: 64MB

代码长度限制: 16KB


#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main()
{
    int n;
    int s[1001];

    int  i=0;
    scanf("%d", &n);
    if (n > 0)
    {
        while(n >0)
        {
            s[i] = n % 10;
            n = n /10;
            i++;
        }
        for (i = i -1 ; i >= 0 ; i--)
        {
            if (s[i]==0)
                printf("ling");
            else if (s[i]==1)
                printf("yi");
            else if (s[i]==2)
                printf("er");
            else if (s[i]==3)
                printf("san");
            else if (s[i]==4)
                printf("si");
            else if (s[i]==5)
                printf("wu");
            else if (s[i]==6)
                printf("liu");
            else if (s[i]==7)
                printf("qi");
            else if (s[i]==8)
                printf("ba");
            else if (s[i]==9)
                printf("jiu");
            if(i)
                printf(" ");
            else
                printf("\n");

        }
    }
    else if (n==0)
    {
        printf("ling\n");
    }
    else
    {
        n = -n;

        while(n > 0)
        {
            s[i] = n % 10;
            n = n /10;
            i++;
        }
        printf("fu ");
        for (i = i -1 ; i >= 0 ; i--)
        {
            if (s[i]==0)
                printf("ling");
            else if (s[i]==1)
                printf("yi");
            else if (s[i]==2)
                printf("er");
            else if (s[i]==3)
                printf("san");
            else if (s[i]==4)
                printf("si");
            else if (s[i]==5)
                printf("wu");
            else if (s[i]==6)
                printf("liu");
            else if (s[i]==7)
                printf("qi");
            else if (s[i]==8)
                printf("ba");
            else if (s[i]==9)
                printf("jiu");
            if(i)
                printf(" ");
            else
                printf("\n");

        }
    }return 0;
}

 


版权声明:本文为linpengzt原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。