英翻中系統
程式: mt.c
#include <stdio.h>
#include <string.h>
char *e[] = {"dog", "cat", "a", "chase", "eat", NULL};
char *c[] = {"狗", "貓", "一隻", "追", "吃" , NULL};
int find(char *nameArray[], char *name) {
for (int i=0; nameArray[i] != NULL; i++) {
if (strcmp(nameArray[i], name)==0)
return i;
}
return -1;
}
void mt(char *words[], int len) {
for (int i=0; i<len; i++) {
int ei = find(e, words[i]);
if (ei < 0)
printf(" _ ");
else
printf(" %s ", c[ei]);
}
}
int main(int argc, char *argv[]) {
mt(&argv[1], argc-1);
}
執行結果:
$ gcc mt.c -std=c99 -o mt
$ ./mt a dog chase a cat
一隻 狗 追 一隻 貓