Como comparar um vetores linguagem c

Primeiramente, boa noite a todos. 

O problema é o seguinte:

Eu tenho um vetor char chamado alfa, e o outro vetor, chamado mensagem.

O vetor alfa contém as 26 letras do alfabeto, e o vetor mensagem, contém algo digitado pelo usuário, com um máximo de até 1000 caractéres.

Eu preciso fazer com que, cada caractére da variável mensagem, seja comparada à cada caractére da variável alfa, e que, quando for verdadeiro [ou seja, quando forem iguais ambos os caractéres], a posição desse caractére [já que é um vetor] na variável alfa, seja jogado em outro vetor,  por exemplo, um vetor do tipo char, chamado novamensagem.

Por exemplo. Tendo uma mensagem "abcde", e meu alfa sendo "abcdefghijklmnopqrstuvwxyz".

Ao comparar mensagem[0] com alfa[0], ambos serão "a", então, como "a" ocupa a 1ª posição no vetor, 

a 1ª posição do vetor novamensagem[0], deverá ter o valor 1, em seguida, ele irá comparar, mensagem[0] com alfa[1],alfa[2], e assim por diante, mas como não serão mais iguais, não retornará mais nenhum valor.

E assim por diante, até alfa[4], que será a letra "e", que nesse caso, terá que retornar o valor 5, que é a posição da letra"e" no vetor alfa..

Agradeço desde já por qualquer ajuda.

Segue abaixo meu código. Só preciso implementar esta função.

#include #include #include #include int main [void] { /*declaração de variáveis do tipo char*/ char alfa[27]; char mensagem[1000]; int novamensagem[1000]; int cont = 0; int j = 0; /*atribuição de ponteiro do tipo file, para o arquivo crip.txt, no modo escrita "write"*/ FILE *file; file = fopen["C:/Users/Denis/Desktop/Crip.txt", "w"]; printf["Digite sua mensagem:\n"]; /*lê mensagem digitada por usuario, e atribui à variável mensagem*/ scanf["%[A-Z a-z0-9]", &mensagem]; /*Conta o número de caractéres do vetor mensagem*/ while [mensagem[cont] != NULL] { cont++; } /*atribuição de ponteiro do tipo file, para o arquivo alfa.txt, no modo leitura "read"*/ FILE *abcd; abcd = fopen["C:/Users/Denis/Desktop/alfa.txt", "r"]; /*lê conteúdo do arquivo alfa, até o caractere ser nulo, e joga na variável alfa*/ while [fgets[alfa, 27, abcd] != NULL] for [int abc = 0; abc < 27; abc++] { for [int i = 0; i 0] { printf["str1 é maior"]; } else if[ret

Bài mới nhất

Chủ Đề