
fedoralinux36
(usa Fedora)
Enviado em 04/12/2014 - 15:08h
Olá, estou criando um programa que deve ler uma string, depois dizer quantas vezes cada palavra na string aparece.Está quase pronto,mas no momento que diz quantas vezes aparece determinada palavra o programa imprime errado, podem me ajudar ?
Segue o código...
#include <string.h>
#include <stdio.h>
char str[] = "A vida eh bela meu brother brother";
char s[2] = " ";
char *token;
int x;
int w;
int zetta1;
int zetta2;
int bb = 0;
int main(){
printf ("\n\n %s \n\n",str);
token = strtok(str, s);
while( token != NULL )
{
//---------------------------------------------------------------------------
//PARTE QUE DIZ QUANTAS VEZES APARECE DETERMINADA PALAVRA
//---------------------------------------------------------------------------
x = strlen(str); //conta quantas letras tem
for (zetta2 = 0; zetta2 <= x; zetta2++){
if (s[zetta2] == token[0]){ //comparação errada
bb = bb + 1;
}
}
if (bb < 2){
printf ("\'%s\' aparece apenas %d vez \n",token,bb);
}
else {
printf (" %s aparece %d vezes \n",token,bb);
}
//---------------------------------------------------------------------------
//---------------------------------------------------------------------------
token = strtok(NULL, s);
}
return(0);
}