L1-007 念数字
/*
输入一个整数,输出每个数字对应的拼音。
当整数为负数时,先输出fu字。
*/
一,思路
类似于003,用一个字符串来保存这个整数,遍历这个字符串,将字符转化为数字,再对每个数字进行操作。
二,代码
#include<stdio.h>
#include<string.h>
/*
输入一个整数,输出每个数字对应的拼音。
当整数为负数时,先输出fu字。
*/
int main(){
char s[10];//记录下这个整数 ,类似于第三题
scanf("%s",&s);
if(s[0]=='-')//由于有正负的存在,所以对第一个字符做特殊判断
printf("fu");
int a[10]={0};
int i,t,len=strlen(s);
for(i=0;i<len;i++){
t=s[i]-48;//遍历字符串,字符转数字
if(t==0)
printf("ling");
if(t==1)
printf("yi");
if(t==2)
printf("er");
if(t==3)
printf("san");
if(t==4)
printf("si");
if(t==5)
printf("wu");
if(t==6)
printf("liu");
if(t==7)
printf("qi");
if(t==8)
printf("ba");
if(t==9)
printf("jiu");
if(i!=len-1)
printf(" ");//格式,除了最后一个字符,其他都要加空格
}
}
三,总结
1.定义一个字符串来保存整数
2.于有正负的存在,所以对第一个字符做特殊判断
3.格式,除了最后一个字符,其他都要加空格(在循环条件中完成)