Ir para conteúdo
Fórum Script Brasil
  • 0

Erro com else if


Anderson G.

Pergunta

Galera .... quem pergunta muito é banido ???? Não me levem a mal não ... é que eu estou aprendendo ... e ainda assim assim eu caço bastante antes de perguntar ..... mas é complicadinho encotrar erros em C pra quem tá aprendendo.!!!!

vamos lá ....

Este algorítimo era pra calcular a idade de duas pessoas e mostrar o nome e a idade da pessoa mais velha. Pensei comigo .... e se colocarem a mesma idade ??? ... lascou neeh ..... confunde o C ..!!!

Inclui uma rotina if para ele ver se as idades foram iguais, entretando, apresenta erros nos else ..!!!

linhas 28 e 33

Segue abaixo o código e o erro

In function `int main()':

expected primary-expression before "else"

expected `;' before "else"

#include <stdio.h>
#include <stdlib.h>

main()
{
     int nasc1,nasc2,idade1,idade2,idade;
     char nome1[30],nome2[30];
     int anoatual;

         printf ("\n Entre com o nome da primeira pessoa: ");
         scanf ("%s",nome1);
         printf ("\n Entre com o ano de nascimento da primeira pessoa: ");
         scanf ("%d",&nasc1);         
         printf ("\n Entre com o nome da segunda pessoa: ");
         scanf ("%s",nome2);
         printf ("\n Entre com o ano de nascimento da segunda pessoa: ");
         scanf ("%d",&nasc2);
         printf ("\n Entre com o ano recorrente: ");
         scanf ("%d",&anoatual);

               idade1=anoatual-nasc1;
               idade2=anoatual-nasc2;

               if (idade1 > idade2)

         printf("\n A pessoa mais velha e: %s ", nome1); printf("com %d anos: \n\n", idade1);

               else
         
         printf("\n A pessoa mais velha e: %s ", nome2); printf ("com %d anos: \n\n", idade2);

               else
                   if (idade1 == idade2);
                   idade=idade1;

         printf ("\n %s e %s estao com a mesma idade. %d Anos. \n\n", nome1, nome2,idade);


system("pause");
}

Editado por Anderson G.
Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0

Acho que já te respondi em outro tópico.

Quando se quer executar mais de um comando tem que botar as chaves { }. Tem tambem erros na arrumação do seu if.

if (idade1 > idade2)
{
         printf("\n A pessoa mais velha e: %s ", nome1); 
         printf("com %d anos: \n\n", idade1);
}
     else if(idade1 < idade2) /// Acrecentei mais um if
            {        
                   printf("\n A pessoa mais velha e: %s ", nome2); 
                   printf ("com %d anos: \n\n", idade2);
            }
              else  if (idade1 == idade2);
                      {
                              idade=idade1;        /// Se as idades já são iguais, pra que igualar elas ???
                              printf ("\n %s e %s estao com a mesma idade. %d Anos. \n\n", nome1, nome2,idade);
                       }

Abraço.

Link para o comentário
Compartilhar em outros sites

  • 0
Acho que já te respondi em outro tópico.

Quando se quer executar mais de um comando tem que botar as chaves { }. Tem tambem erros na arrumação do seu if.

if (idade1 > idade2)
{
         printf("\n A pessoa mais velha e: %s ", nome1); 
         printf("com %d anos: \n\n", idade1);
}
     else if(idade1 < idade2) /// Acrecentei mais um if
            {        
                   printf("\n A pessoa mais velha e: %s ", nome2); 
                   printf ("com %d anos: \n\n", idade2);
            }
              else  if (idade1 == idade2);
                      {
                              idade=idade1;        /// Se as idades já são iguais, pra que igualar elas ???
                              printf ("\n %s e %s estao com a mesma idade. %d Anos. \n\n", nome1, nome2,idade);
                       }

Abraço.

valeu mais uma vez ..... funcionou legalzinho !

Link para o comentário
Compartilhar em outros sites

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.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152.1k
    • Posts
      651.8k
×
×
  • Criar Novo...