Pessoal, tava fazendo um exercício de C, e o livro pede pra escrever um programa que diz quantas letras tem a maior frase. Eu escrevi :
#include <stdio.h>
int main()
{
char a; int i = 0 ; int maior = 0;
printf ("entre com uma frase ai : ");
scanf (" %c", &a);
while ( a != '.')
{
while ( a!= ' ' && a!= '.')
{
if (a != ',' && a!= ' ')
i++;
scanf (" %c", &a);
printf (".");
}
if (i> maior)
{
maior = i;
}
i=0;
}
printf ("a maior palavra tem %d digitos", maior);
return 0;
}
O problema é : O programa não entende que é pra sair do laço " while ( a!= ' ' && a!= '.') " quando tem espaço. Então se eu digitar a frase : eu sou Caio. , o programa retorna que a frase tem 9 letras. Alguém pode dar uma luz? Não to entendendo porque o programa não " pula" o espaço ...
EDIT : esse printf ("." ) ; foi só pra fazer testes.
Pergunta
caio.andra.de
Pessoal, tava fazendo um exercício de C, e o livro pede pra escrever um programa que diz quantas letras tem a maior frase. Eu escrevi :
#include <stdio.h>
int main()
{
char a; int i = 0 ; int maior = 0;
printf ("entre com uma frase ai : ");
scanf (" %c", &a);
while ( a != '.')
{
while ( a!= ' ' && a!= '.')
{
if (a != ',' && a!= ' ')
i++;
scanf (" %c", &a);
printf (".");
}
if (i> maior)
{
maior = i;
}
i=0;
}
printf ("a maior palavra tem %d digitos", maior);
return 0;
}
O problema é : O programa não entende que é pra sair do laço " while ( a!= ' ' && a!= '.') " quando tem espaço. Então se eu digitar a frase : eu sou Caio. , o programa retorna que a frase tem 9 letras. Alguém pode dar uma luz? Não to entendendo porque o programa não " pula" o espaço ...
EDIT : esse printf ("." ) ; foi só pra fazer testes.
Editado por caio.andra.deLink para o comentário
Compartilhar em outros sites
0 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.