Ir para o conteúdo
suzy

acham que ta correcto?

Mensagens Recomendadas

suzy    0
suzy

Desenvlover uma funcão que receba por argumenta uma string e devolva o numero de vezes que o caracter inicial (o primeiro caracter da frase que nao seja um espaço em branco surge ao longo da frase. O programa nao deve distinguir entre letras maiusculas e minusculas)

int funcao(char str[] )
    {
    int i,total;
   
    for(i=0;str[i]!= '\o'; i++)
         {
            if(str[0] == str[i])
            total=total+1;
         }

     return total;
}

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Rui Carlos    311
Rui Carlos

parece que tens aí um \o quando devias ter um \0, não estás a verificar se o caracter inicial é um espaço e estás a distinguir as maiúsculas das minúsculas.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
suzy    0
suzy











int funcao(char str[] )
    {
    int i,total;
   
    for(i=0;str[i]!= '\o' && str[i]!= '_'; i++)
         {
            if(str[0] == str[i])
            total=total+1;
         }

     return total;
}/code]


têm razão. agora o meu problema é como distingo maiusculas de minusculas  :hmm: tenho de fazer outro ciclo??'

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Rui Carlos    311
Rui Carlos

vais sair do cilco quando te aparecer o caracter '_' e não me parece que seja isso que pretendes.

continuas com \o em vez de \0.

para não distinguir maiúsculas de minúsculas podes converter os caracteres para minúsculas antes de comparares.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
suzy    0
suzy
;)













int funcao(char str[] )
    {
    int i,total;
    str[i]==tolower(str[i]); // PARA CONVERTER PARA MAIUSCULAS NAO SEI SE FAÇO ISTO AQUI :hmm:
   
    for(i=0;str[i]!= '\0' && str[i]!= '_'; i++)
         { 
            
            if(str[0] == str[i])
            total=total+1;
         }

     return total;








Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Rui Carlos    311
Rui Carlos

não sei se testas-te isso, mas obviamente não está a funcionar.

para começar não estás a inicializar a variável 'total'.

depois não sei para que é o "str[ i ]!='_'".

sugeria-te que fizesse dois ciclos: um para encontrar o primeiro caracter diferente do espaço e outro para efectivamente contar o caracteres.

o 'tolower' é para ser usado dentro do 'if' (quando fazes a comparação dos caracteres).

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora


×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade