莫尔斯码的c语言怎么编写啊

来源:百度知道 编辑:UC知道 时间:2024/09/22 01:44:17
编一个程序:读取一个英语短语,用莫尔斯码对它编码。再写一个程序,
读取一个用莫尔斯码表示的短语,然后把它转换成等价的英语。在每个用
莫尔斯码编码的字母之间留一个空格,在每一个用莫尔斯码编码的单词之间
留三个空格。 附:莫尔斯码编码表。
字符 电码符号 字符 电码符号 字符 电码符号
A · ━ Q ━ ━ · ━ 1 · ━ ━ ━ ━
B ━ · · · R · ━ · 2 · · ━ ━ ━
C ━ · ━ · S ··· 3 · · · ━ ━
D ━ · · T ━ 4 · · · ·
E · U · · ━ 5 · · · · ·
F · · ━ · V · · · ━ 6 ━ · · · ·
G ━ ━ · W · ━ ━ 7 ━ ━ · · ·
H · · · · X ━ · · ━ 8 ━ ━ ━ · ·
I · · Y ━ · ━ ━ 9 ━ ━ ━ ━ ·
J · ━ ━ ━ Z ━ ━ · · 0 ━ ━ ━ ━ ━
K ━ · ━
L · ━ · ·
M ━ ━
N ━ · ━
O ━ ━ ━ ·
P · ━ ━ ·
怎么把每个字母定义成电码符号呢;又这样把电码符号转换成字母呢
快点来救命啊!!
急用啊
最好编一小段,,让我看看
鄙人不大懂
有没有懂的快点回答啊
鄙人急用啊,,在三天内就要完成啊!!!!

1、定义两个数组,一个是char *型,放A-Z,0-9的莫尔斯码,一个是char型,放'A'-'Z','0'-'9'.
原文转电码时,对每个字符查找其在第二个数组中的位置i,那么第一个数组中下标为i的就是对应的莫尔斯码.电码转原文时,在第一个数组中用strcmp查找莫尔斯码,然后第二个数组中对应字符.

2、比如,放莫尔斯码的数组是char *morse[36],放原文的是char str[36],那么字符c转莫尔斯码就可以这样:

char *Char2Morse(char c)
{
for(int i=0;i<36;i++)
if(str[i]==c) return morse[i];
return NULL;
}

莫尔斯码转原文就是

char Morse2Char(char *m)
{
for(int i=0;i<36;i++)
if(strcmp(morse[i],m)==0) return str[i];
return 0;
}

定义两个数组,一个是char *型,放A-Z,0-9的莫尔斯码,一个是char型,放'A'-'Z','0'-'9'.
原文转电码时,对每个字符查找其在第二个数组中的位置i,那么第一个数组中下标为i的就是对应的莫尔斯码.
电码转原文时,在第一个数组中用strcmp查找莫尔斯码,然后第二个数组中对应字符.

比如,放莫尔斯码的数组是char *morse[36],放原文的是char str[36],那么字符c转莫尔斯码就可以这样:
char *Char2Morse(char c)
{
for(int i=0;i<3