Ir ao conteúdo
  • Cadastre-se
Renanzinthhh

Erro durante a compilação de um programa

Recommended Posts

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;	}

Compartilhar este post


Link para o post
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.

Compartilhar este post


Link para o post
Compartilhar em outros sites
Então, eu consegui fazer, sendo que a variável cont, ela ta fazendo a contagem, sendo que ela armazena um valor e dps soma + outro, ou seja

o primeiro nome tem 1 a

o segundo tem 2 a, ele pega o 2 e soma +1 ou seja, aparece 3...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora





Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações 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

×