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
Pergunta
Bernardo B.L
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
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.