WooKinson

  博客园 :: 首页 :: 新随笔 :: 联系 :: 订阅 :: 管理 ::

示例代码:

#include <stdio.h>
#include <string.h>
#define N 10

char num[N] = {0} ;

void yuyin(int n , int x)
{
  if (x == 1 && (n == 9 || n == 5))
  {
    printf("shi ");
    return ;
  }
  else
  {
    switch(x)
    {
      case 1 : printf("yi ");break;
      case 2 : printf("er ");break;
      case 3 : printf("san ");break;
      case 4 : printf("si ");break;
      case 5 : printf("wu ");break;
      case 6 : printf("liu ");break;
      case 7 : printf("qi ");break;
      case 8 : printf("ba ");break;
      case 9 : printf("jiu ");break;
      default :break;
    }
    switch(n)
    {
      case 1 : printf("shi ");break;
      case 2 : printf("bai ");break;
      case 3 : printf("qian ");break;
      case 4 : printf("wan ");break;
      case 5 : printf("shi ");break;
      case 6 : printf("bai ");break;
      case 7 : printf("qian ");break;
      case 8 : printf("yi ");break;
      case 9 : printf("shi ");break;
      case 10 : printf("bai ");break;
      default :break;
    }
  }

  return ;
}


int main(void)
{
  int i = 0 , n = 0;
  scanf("%s",num);
  n = strlen(num) ;
  
  for (i = 0 ; i < n ; i ++)
  {  
    if (num[i] == '0' && i < n-1)
    {
      if (num[i+1] != '0')
      {
        printf("ling ");
      }
      continue;
    }
    yuyin(n-1 -i,num[i]-48);
  }

  return 0;
}

posted on 2018-01-20 17:29  WooKinson  阅读(830)  评论(0)    收藏  举报