LusoRobótica - Robótica em Português
Software => C/C++ => Tópico iniciado por: raicai em 23 de Agosto de 2015, 15:41
-
Bom dia pessoal, estava elaborando o seguinte código e me surgiu uma dúvida
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main(){
char *entrada;
char *saida;
int n, i, q;
int compare;
entrada=(char *) malloc((n+1) * sizeof(char));
saida=(char *) malloc((n+1) * sizeof(char));
printf("Digite quantas palavras deseja entrar: \n");
scanf("%d", &n);
for(i=0; i<n; i++){
printf("");
scanf("%s", entrada);
}
printf("Digite quantas palavras deseja sair: \n");
scanf("%d", &q);
for(i=0; i<q; i++){
printf("");
scanf("%s", saida);
}
int comparar= strcmpi(entrada, saida);
}
Como posso realizar um "for" pra que seja comparado que as palavras que estão na saída constam na entrada? Por exemplo:
Entrada: Mesa, Tabua, Cadeira
Saida: Tabua
O "for" irá comparar Tabua com as 3 palavras da entrada e imprimir que a palavra consta ou não na entrada. Podem me ajudar?
-
strcmp?
-
Eu estava fazendo uns testes, e acabou indo sem eu perceber hahahaha
-
Antes de fazeres o que pedes, tens de fazer bem os passos que estao para tras.
O teu codigo tem varios erros, por isso o melhor 'e dividires o problema por partes.
A tua funcionalidade incial para inserir as entradas nao esta bem, logo tudo o resto nao funcionara.
Corre o teu codigo mentalmente passo a passo e verifica se esta de acordo com o que pretendes.
Exemplo:
entrada=(char *) malloc((n+1) * sizeof(char));
Esta 'e a primeira instruccao do teu codigo, ele vai alocar uma quantidade de memoria, correspondente ao valor de n + 1. Qual 'e o valor de n neste momento?
'E indefinido, ainda nao foi inicializado.
Se fizeres este exercicio mental para todas as linhas do teu codigo vais descobrir os probelmas e pensar como estruturar e resolve-los.
-
... pessoalmente não ajudo desconhecidos ....