11不是一十一是十一
20不是二十零而是二十
109不是一百零十九而是一百零九
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
double mod(double, double);
int main(void)
{
// char *x;
int a;
char x[4];
printf("Please input a number \n");
scanf("%d", &a);
sprintf(x, "%d", a);
int sum = 0;
for(int i = 0 ; i < 4 ; i++){
if(x[i] > 47 && x[i] < 58){
sum++;
}
printf("<%d> ", x[i]);
}
printf(" Sum: %d ", sum);
if(sum > 4){
printf("Input the number in 0~999");
return 0;
}
printf(" \n++++++++++++++++\n ");
for(int i = 0; i<3 ; i++){
if(i==1 && sum==2 ){
printf("十");
}else if(sum==3 && i == 1){
printf("百");
}else if(sum==3 && i == 2 && x[1] != 48){
printf("十");
}else if(sum == 3 && i == 2 && x[1] == 48 && x[2] !=48){
printf("零");
}
switch(x[i]){
case '1':
if(sum != 2 && i != 1)
printf("一");
break;
case '2':
printf("二");
break;
case '3':
printf("三");
break;
case '4':
printf("四");
break;
case '5':
printf("五");
break;
case '6':
printf("六");
break;
case '7':
printf("七");
break;
case '8':
printf("八");
break;
case '9':
printf("九");
break;
}
}
system("pause");
return 0;
}
沒有留言:
張貼留言