PHP, Java, JavaScript, XML, XHTML, HTML, CSS, ASP, Delphi, Assembly, LaTeX, C, UML, Flash, Perl, SQL, Python, Zope, Pascal, WML. Se conhece mais de 3 siglas referidas, este é o forum para si.
Moderadores: Administradores, Moderadores
por Darkblood » Quinta Jul 31, 2008 1:46
É um exercício muito simples mesmo. Só que não estou a perceber onde estou a falhar...
Desenvolva um programa que leia uma frase introduzida pelo utilizador e verifique quantas vezes a primeira palavra se repete. O programa não deve distinguir entre letras maiúsculas e minúsculas.
Exemplo: ter ou nao ter
O programa deverá escrever: A palavra ter repete-se duas vezes.
Tenho o seguinte código:
#include <stdio.h>
#include <string.h>
int main()
{
int i=0;
char f[50],p[10], temp[50];
printf("Introduza uma frase\n");
gets(f);
for(i=0; f[i]!=' ';i++)
{
f[i]=p[i];
printf("%c", p[i]);
}
system("pause");
}
O programa está incompleto, o resto acho que sei fazer, só estou preso naquele ciclo for. Quando faço esta atribuição: f[i]=p[i] , "p" deveria ficar com a letra correspondente de "f", mas quando tento imprimir "p" só me sai lixo...
-
Darkblood
- Membro de Ouro

-
- Mensagens: 830
- Registado: Quinta Mar 02, 2006 22:35
- Localização: Coimbra
por vamosAeles » Quinta Jul 31, 2008 9:48
Boas,
acho q queres é fazer p[i] = f[i] em vez de f[i] = p[i]

-
vamosAeles
- Membro de Prata

-
- Mensagens: 206
- Registado: Quarta Jan 04, 2006 21:29
- Localização: Lisboa/Proença
por Darkblood » Quinta Jul 31, 2008 13:43
vamosAeles Escreveu:Boas,
acho q queres é fazer p[i] = f[i] em vez de f[i] = p[i]

É isso mesmo, tão simples.
Obrigado.
Mas não percebo qual é a diferença para o que eu tinha anteriormente.

-
Darkblood
- Membro de Ouro

-
- Mensagens: 830
- Registado: Quinta Mar 02, 2006 22:35
- Localização: Coimbra
por Ryujin » Quinta Jul 31, 2008 14:25
C não funciona como a algebra matematica. Quando fazes A = B apenas A é modificado ficando com o mesmo valor de B. B permanece inalterado.
And now.. Something completely diferent.
-
Ryujin
- Membro de Prata

-
- Mensagens: 144
- Registado: Domingo Dez 18, 2005 21:57
por bvmzinho » Sexta Ago 01, 2008 14:15
Ryujin Escreveu:C não funciona como a algebra matematica. Quando fazes A = B apenas A é modificado ficando com o mesmo valor de B. B permanece inalterado.
exactamente!
e o facto de só te estar a sair lixo, antes da correcção, era devido ao facto de não limpares a variável p, quando a declaraste...
como disse o Ryujin e muito bem, em C (e na maior parte das linguagens) a atribuição é feita da direita para a esquerda e não no sentido contrário.
cumps
MacBook Pro 2.2GHz
-
bvmzinho
- Membro de Prata

-
- Mensagens: 362
- Registado: Sábado Jan 15, 2005 17:25
por Darkblood » Sexta Ago 01, 2008 16:59
Ok, obrigado pessoal.
-
Darkblood
- Membro de Ouro

-
- Mensagens: 830
- Registado: Quinta Mar 02, 2006 22:35
- Localização: Coimbra
Voltar para Programação
Quem está ligado:
Utilizadores a ver este Fórum: Nenhum utilizador registado e 6 visitantes