开始刷题,感觉代码量和基础太渣了,导致数据结构不会,重头慢慢刷吧~
1、题目
输入样例:
-600
输出样例:
fu liu ling ling
2、代码
#include<stdio.h>
int main(){
int num;
scanf("%d",&num);
if(num<0){
printf("fu ");
num=-num;
}
if(num==0){
printf("ling");
}
int a[11];
a[1]=num%10;
int N=num,cnt=1;
while(N){
N=N/10;
a[++cnt]=N%10;
}
int flag=0;
int i;
for(i=cnt-1;i>0;i--){
if(!flag)
flag=1;
else
printf(" ");
switch(a[i]){
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;
}
}
return 0;
}
3、讨论
我使用的方法是倒叙存储在一个数组里,负号先输出,零的情况单独讨论,这样就比较容易出结果了~
妙啊!!!