如何用C语言将摩尔斯电码转换成拉丁字母翻译

如何用C语言将摩尔斯电码转换成拉丁字母翻译,c,C,所以,我的家庭作业是做莫尔斯拉丁字母翻译。到目前为止,我已经成功地将摩尔斯电码转换成拉丁文翻译,但我无法让它以另一种方式工作。 代码如下: #include<stdio.h> #define MAX 1000 int main(){ int i, j; char alfabet[26]={'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R',

所以,我的家庭作业是做莫尔斯拉丁字母翻译。到目前为止,我已经成功地将摩尔斯电码转换成拉丁文翻译,但我无法让它以另一种方式工作。 代码如下:

#include<stdio.h>
#define MAX 1000

int main(){
    int i, j;
    char alfabet[26]={'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z'};
    char* morse[27]={".-", "-..", "-.-.", "-..", ".", "..-.", "--.", "....", "..", ".---", "-.-", ".-..", "--", "-.", "---", ".--.", "--.-", ".-.", "...", "-", "..-", "...-", ".--", "-..-", "-.--", "--.."};
    char tekst[MAX];
    printf("Podaj tekst pisany wielkimi literami: ");
    scanf("%[^\n]c", tekst);
    for(i=0;i<27;i++){
        for(j=0;j<30;j++){
            if(tekst[i]==alfabet[j]){
            printf("%s ", morse[j]);
            }


        }

    }

}
#包括
#定义最大1000
int main(){
int i,j;
字符alfabet[26]={'A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z'};
char*morse[27]={“-”、“-…”、“-…”、“-…”、“-”、“-”、“-”、“-”、“-”、“-”、“-”、“-”、“-”、“-”、“-”、“-”、“-”、“-”、“-”、“-”、“-”、“-”、“-”、“-”、“-”、“-”、“-”、“-”、“-”、“-”、“-”、“-”;
char-tekst[MAX];
printf(“Podaj tekst pisany wielkimi literami:”);
scanf(“%[^\n]c”,tekst);
对于(i=0;i这是代码

#include<stdio.h>
#include <string.h>
#define MAX 1000

int main(){
    int i, j;
    char alfabet[26]={'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z'};
    char* morse[27]={".-", "-..", "-.-.", "-..", ".", "..-.", "--.", "....", "..", ".---", "-.-", ".-..", "--", "-.", "---", ".--.", "--.-", ".-.", "...", "-", "..-", "...-", ".--", "-..-", "-.--", "--.."};
    char tekst[MAX];

    printf("Podaj tekst pisany wielkimi literami: ");
    scanf("%s", &tekst);

    int length = (unsigned)strlen(tekst);

    for(i=0; i<length; i++){
        for(j=0; j<26; j++){
            if(tekst[i]==alfabet[j]){
                printf("%s ", morse[j]);
            }
        }

    }

}
#包括
#包括
#定义最大1000
int main(){
int i,j;
字符alfabet[26]={'A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z'};
char*morse[27]={“-”、“-…”、“-…”、“-…”、“-”、“-”、“-”、“-”、“-”、“-”、“-”、“-”、“-”、“-”、“-”、“-”、“-”、“-”、“-”、“-”、“-”、“-”、“-”、“-”、“-”、“-”、“-”、“-”、“-”、“-”、“-”、“-”;
char-tekst[MAX];
printf(“Podaj tekst pisany wielkimi literami:”);
scanf(“%s”和&tekst);
整数长度=(无符号)strlen(tekst);
对于(i=0;i这是代码

#include<stdio.h>
#include <string.h>
#define MAX 1000

int main(){
    int i, j;
    char alfabet[26]={'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z'};
    char* morse[27]={".-", "-..", "-.-.", "-..", ".", "..-.", "--.", "....", "..", ".---", "-.-", ".-..", "--", "-.", "---", ".--.", "--.-", ".-.", "...", "-", "..-", "...-", ".--", "-..-", "-.--", "--.."};
    char tekst[MAX];

    printf("Podaj tekst pisany wielkimi literami: ");
    scanf("%s", &tekst);

    int length = (unsigned)strlen(tekst);

    for(i=0; i<length; i++){
        for(j=0; j<26; j++){
            if(tekst[i]==alfabet[j]){
                printf("%s ", morse[j]);
            }
        }

    }

}
#包括
#包括
#定义最大1000
int main(){
int i,j;
字符alfabet[26]={'A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z'};
char*morse[27]={“-”、“-…”、“-…”、“-…”、“-”、“-”、“-”、“-”、“-”、“-”、“-”、“-”、“-”、“-”、“-”、“-”、“-”、“-”、“-”、“-”、“-”、“-”、“-”、“-”、“-”、“-”、“-”、“-”、“-”、“-”、“-”、“-”;
char-tekst[MAX];
printf(“Podaj tekst pisany wielkimi literami:”);
scanf(“%s”和&tekst);
整数长度=(无符号)strlen(tekst);

对于(i=0;i
printf
通常不打印,除非有
\n
字符,请尝试将其添加到程序末尾。
“%[^\n]c”
中的
c
用于什么?请注意,
for(j=0;jNo idea,刚发现它是一种扫描直到输入的方式,删除了“c”程序的工作原理是一样的。不包括它很重要吗?谢谢你,将for循环改为jNote:B的代码应该是
-…
,而不是
-…
(它是D)至于从莫尔斯电码翻译的问题,你可以使用类似的代码,但使用strcmp将代码与表格进行比较。printf通常不打印,除非有\n字符,尝试将其添加到程序的末尾。“%[^\n]c”中的c是什么
for?请注意,
for(j=0;jNo idea,刚发现它是一种扫描直到回车的方法,删除了“c”,程序的工作原理是一样的。不包括它很重要吗?谢谢,将for循环改为jNote:B的代码应该是
-…
,而不是
-…
(即D)关于摩尔斯电码的翻译问题,您可以使用类似的代码,但使用strcmp将代码与表格进行比较。