A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 神来之笔 中级黑马   /  2014-12-21 18:01  /  754 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

/*读入一个自然数n,计算其各位数字之和,用汉语拼音写出和的每一位数字。 输入格式:  每个测试输入包含1个测试用例,即给出自然数n的值。这里保证n小于10100。 输出格式:  在一行内输出n的各位数字之和的每一位,拼音数字间有1 空格,但一行中最后一个拼音数字后没有空格。 输入样例:  1234567890987654321123456789 输出样例: yi san wu */  #include <stdio.h>   void shuchu(int x);    int main(){   char n;   int a,b,s=0;  scanf("%c",&n);  while(n!='\n')   {     s+=n-'0';     scanf("%c",&n);   }     shuchu(s);   return 0; }   void shuchu(int x) {    if(x<0)   {    printf("fu ");   x=-x;    }    int mask = 1;   int t = x;    while ( t>9 ) {     t /= 10;     mask *=10;   }    do {      int d = x / mask;

    switch(d)     {      case 0: printf("ling");break;     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;     }      if(mask>9)printf(" ");     x %= mask;     mask /= 10;    } while ( mask > 0 );   return;    }

1 个回复

倒序浏览
谢谢分享
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马