念整数

念整数(5分)

题目内容:

你的程序要读入一个整数,范围是[-100000,100000]。然后,用汉语拼音将这个整数的每一位输出出来。

如输入1234,则输出:

yi er san si

注意,每个字的拼音之间有一个空格,但是最后的字后面没有空格。当遇到负数时,在输出的开头加上“fu”,如-2341输出为:

fu er san si yi

输入格式:

一个整数,范围是[-100000,100000]。

输出格式:

表示这个整数的每一位数字的汉语拼音,每一位数字的拼音之间以空格分隔,末尾没有空格。

输入样例:

-30

输出样例:

fu san ling

时间限制:500ms内存限制:32000kb
 
参考代码:
/*1.读入一个整数字符,保存到数组
2.取出每一位判断是否与对应字符相等 "-"也当做字符去判断,不用判断整数字符的正负(for循环+if语句)
3.只有最后一位没有空格(if(i!=cnt-1)  printf(" ")语句)
*/

#include<stdio.h>
#include<string.h>
int main(){
  char a[100];
  gets(a);
  int cnt = strlen(a);
  for(int i = 0;i<cnt;i++){
    if(a[i]=='-'){
      printf("fu");
    }else if(a[i]=='0'){
      printf("ling");
    }else if(a[i]=='1'){
      printf("yi");
    }else if(a[i]=='2'){
      printf("er");
    }else if(a[i]=='3'){
      printf("san");
    }else if(a[i]=='4'){
      printf("si");
    }else if(a[i]=='5'){
      printf("wu");
    }else if(a[i]=='6'){
      printf("liu");
    }else if(a[i]=='7'){
      printf("qi");
    }else if(a[i]=='8'){
      printf("ba");
    }else if(a[i]=='9'){
      printf("jiu");
  }
  if(i!=cnt-1){
    printf(" ");
  }

}
  return 0;
}

原文地址:https://www.cnblogs.com/zhhjthing/p/7776347.html