• Matéria: Informática
  • Autor: levicr991
  • Perguntado 5 anos atrás

Por que este código não funciona (testando no C++)?

#include
#include
#include

char nome[80];

int main(){

int idade;

setlocale(LC_ALL, "Portuguese");

printf("Nome: ");
scanf("%s", &nome);
fflush(stdin);
printf("\nIdade: ");
scanf("%d", &idade);

switch (idade){
case 1:
idade =19 && idade =30 && idade =46 && idade =65;
printf("O plano para pessoas com ou mais de 65 anos é de R$170,00");
break;
default:
printf("Opção inválida");
break;
}

}

Respostas

respondido por: matheusadd12
0

Resposta:

Cara, você não importou a biblioteca stdio nem a do locale, e também o switch case está errado, ele irá entrar se a pessoa digitar 1 na idade, aquele monte de condição não tem efeito no código. Mas para compilar é esse código:

#include <stdio.h>

int main ()

{

 int idade;

 char nome[80];

 printf ("Nome: ");

 scanf ("%s", *&nome);

 fflush (stdin);

 printf ("\nIdade: ");

 scanf ("%d", &idade);

 switch (idade)

   {

   case 1:

     (idade = 19) && (idade = 30) && (idade = 46) && (idade = 65);

     printf ("O plano para pessoas com ou mais de 65 anos C) de R$170,00");

     break;

   default:

     printf ("OpC'C#o invC!lida");

     break;

   }

}

Explicação:


levicr991: Não funcionou : \ O objetivo do programa é receber nome e idade de uma pessoa e mostrar na tela o plano correspondente da tabela:
levicr991: Até 18 anos: 50,00 reais; de 19 a 29 anos: 70,00 reais; de 30 a 45 anos: 90,00 reais; de 46 a 65: 130,00 reais; e acima de 65 anos: 170,00 reais
levicr991: Dá pra fazer com a estrutura "if" também, mas eu quero fazer com a "switch case"
Perguntas similares