3位数输出英文

将一个三位数转化为英文输出

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
#include <stdio.h>
int main()
{
printf("请输入一个三位数:\n");
int num,unit,decade,hundred;
scanf("%d", &num);
char arr1[][10] = {"ONE", "TWO", "THREE", "FOUR", "FIVE", "SIX", "SEVEN", "EIGHT", "NINE"};
char arr2[][10] = {"TEN", "ELEVEN", "TWELVE", "THIRTEEN", "FOURTEEN", "FIFTEEN", "SIXTEEN", "SEVENTEEN", "EIGHTEEN", "NINETEEN"};
char arr3[][10] = {"TWENTY", "THIRTY", "FORTY", "FIFTY", "SIXTY", "SEVENTY", "EIGHTY", "NINETY"};
unit= num % 10;
decade = num / 10 % 10;
hundred = num / 100;
printf("这个三位数的英文读法为:\n");
if (decade == 1)
{
printf("%s HUNDRED AND %s", arr1[hundred - 1], arr2[unit]);
}
else if(unit==0)
{
printf("%s HUNDRED %s", arr1[hundred - 1], arr3[decade-2]);
}
else
{
printf("%s HUNDRED %s-%s", arr1[hundred - 1], arr3[decade-2], arr1[unit-1]);
}
return 0;

}