C语言输入数字转换特定形式

来源:百度知道 编辑:UC知道 时间:2024/05/18 16:45:11
就好像输入1然后得出'einn',输入21得出'tuttugu ok einn'
我数字和字母之间的转换弄不好,请教一下,谢谢啦(尽量用function)。
0 => naught
1 => einn
2 => tvau
3 => thrir
4 => fjogur
5 => fimm
6 => sex
7 => sjau
8 => atta
9 => niu
10 => tiu
11 => ellifu
12 => tolf
13 => threttan
14 => fjortan
15 => fimmtan
16 => sextan
17 => sjautan
18 => atan
19 => nitjan
20 => tuttugu
21 => tuttugu ok einn
22 => tuttugu ok tvau
23 => tuttugu ok thrir
24 => tuttugu ok fjogur
25 => tuttugu ok fimm
26 => tuttugu ok sex
27 => tuttugu ok sjau
28 => tuttugu ok atta
29 => tuttugu ok niu
30 => thrir tigir
31 => thrir tigir ok einn
32 => thrir tigir ok tvau
33 => thrir tigir ok thrir
34 => thrir tigir ok fjogur
35 => thrir tigir ok fimm
36 => thr

你的转换刚好是0-N,如此有规律...所以可以考虑将所有的字符串放到一个数组中,然后通过得到的值作为数组下标来输出字符串.

--------------
#include <stdio.h>

static const char arr[] = {"naught ",
"einn ",
"tvau ",
"thrir ",
"fjogur ",
"fimm ",
"sex ",
"sjau ",
"atta ",
"niu ",
"tiu ",
"ellifu ",
"tolf ",
"threttan ",
"fjortan ",
"fimmtan ",
"sextan ",
"sjautan ",
"atan ",
"nitjan ",
"tuttugu ",
"tuttugu ok einn ",
"tuttugu ok tvau ",
"tuttugu ok thrir ",
"tuttugu ok fjogur ",
"tuttugu ok fimm ",
"tuttugu ok sex ",
"tuttugu ok sjau ",
"tuttugu ok atta ",
"tuttugu ok niu ",