Ir ao conteúdo
  • Cadastre-se

Erro durante a compilação de um programa


Renanzinthhh

Posts recomendados

Gente, fiz o código aqui do programa abaixo, só que na hora de compilar da erro, olhei olhei e ao meu ver não consegui identifcar, será que o erro foi na parte lógica?

 

Az9ffEr.png

#include <stdio.h>#include <string.h>#include <stdlib.h>	int main()		{			char nomes[3][10], letra;			int i, cont = 0;						for (i=0; i<3; i++)				{					printf("Digite um nome: ");					fgets(nomes[i],10,stdin);				}							printf("Digite uma letra: ");			scanf("%c", &letra);						for (i=0; i<3; i++)				{					if(nomes[i] == letra)						cont++;				}			printf("O nome %s possui %d %c", nomes[i], cont, letra);					system("pause");		return 0;	}
Link para o comentário
Compartilhar em outros sites

nessa linha if ( nomes == letra ) você esta comparando um ponteiro com uma letra.

 

imagine uma folha de papel do seu caderno, ela tem varias linhas não é? em cada linha você pode escrever uma x quantidade de letras. então pense assim

const int linhas = 10;

const int letras = 30;

você tem uma folha com 10 linhas e em cada linha você pode escrever até 30 letras. quando você faz nomes == letra, você esta fazendo linha == letra... você compara toda uma linha com uma só letra, é meio como comparar azeitonas com uma melancia XD. O erro é por que nomes na realidade é um ponteiro que indica onde começa cada linha, nomes[0] é a primeira linha, nomes[1] a segunda e assim consecutivamente. para comparar uma letra em uma linha você precisa fazer nomes[x] == letra, então você estará comparando a letra com a letra X da linha i. ok? Use um for double para isso. Sorte.

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...