Ir para conteúdo
Fórum Script Brasil
  • 0

Dúvida Simples


Bernardo B.L

Pergunta

Exercicio:

Escreva um programa que leia uma string, conte quantos caracteres desta string são iguais a 'a' e substitua os que forem iguais a 'a' por 'b'. O programa deve imprimir o número de caracteres modificados e a string modificada.

Eu fiz ele quase que todo, mas pode gerar um erro...

#include <stdio.h>

#include <stdlib.h>

int main()

{

char palavra[100];

int contador;

int contador2;

int x;

printf("Digite uma palavra: ");

gets(palavra);

printf("\nA palavra digitada é: %s",palavra);

contador=0;

contador2=0;

for(x=0;palavra[x]!='';x=x+1)

{

if(palavra[x]=='a')contador=contador+1;

if(palavra[x]=='a')palavra[x]='b';

if(palavra[x]=='b')contador2=contador2+1;

}

printf("\n\nO numero de letras 'a' é: %d\n\n",contador);

printf("O numero de letras alteradas é: %d\n\n",contador2);

printf("A nova palavra é: %s\n\n",palavra);

system("PAUSE");

return(0);

}

O único erro é quando a palavra digitada tem a letra 'b', aí o número de letras alteradas é maior, isso se dá por essa linha

if(palavra[x]=='b')contador2=contador2+1;

Mas eu não encontrei outro jeito de fazer isso se não assim...Algue aí ajuda? ;D

Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0

Mas porque voce esta usando um segundo contador para contar o numero de b? O numero de letras que serao alteradas esta em contador, pois voce ira alterar o apenas as letras 'a'. Portanto voce deve imprimir o valor de contador e não contador2.

E mais uma coisa, o 'if' suporta bloco de comandos. Basta voce acrescentar um { no comeco do bloco e um } no fim do bloco. assim o seu codigo dentro do for ficaria assim:

if (palavra[x] == 'a') {
     contador = contador + 1;
     palavra[x] = 'b';
}

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,6k
×
×
  • Criar Novo...