今天終於解決了三年以來的瓶頸= ="
#include <stdio.h>
#include <string.h>
int main(void)
{
char s[11];
char k[4][4] = {
"仟", "佰", "拾", ""
};
char unit[3][4] = {
"億", "萬", ""
};
char num[10][4] = {
"零", "壹", "貳", "參", "肆", "伍", "陸", "柒", "捌", "玖"
};
int i, j, len, first, group, zero, empty;
while (scanf("%s", s) == 1)
{
len = strlen(s);
first = len % 4;
group = len / 4;
zero = 0;
for (i = 0, j = 0; i <= group; i++)
{
for (empty = 1; j < first + 4*i; j++)
{
if (s[j] == '0')
zero = 1;
else
{
if (zero)
{
printf("零");
zero = 0;
}
printf("%s", num[s[j]-'0']);
printf("%s", k[j-first-4*(i-1)]);
empty = 0;
}
}
if (!empty)
printf("%s", unit[2-group+i]);
}
printf("\n");
}
return 0;
}
沒有留言:
張貼留言