Ir para o conteúdo
  • Revista PROGRAMAR: Já está disponível a edição #57 da revista programar. Faz já o download aqui!

iceunico

Erro no printf

Mensagens Recomendadas

iceunico    0
iceunico

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

int main(int argc, char *argv[])
{
    float salario,taxa;
    char estado_civil;
    
    printf("Qual o estado civil:");
    scanf("%c",&estado_civil);
    printf("\nQual o salario:");
    scanf("%f",&salario);
    if (estado_civil=='c' || estado_civil=='C')
    taxa=0.5;
    printf("\nSalario: %.2f\nImposto: %.2f\nSalario Final: %.2f",&salario, &salario*taxa, &salario-salario*taxa);
    if(estado_civil=='s' || estado_civil=='S')
    taxa=2;
    printf("\nSalario: %.2f\nImposto: %.2f\nSalario Final: %.2f",&salario, &salario*taxa, &salario-salario*taxa);
    else
    printf("\nEstado Civil Incorrecto!\n");
  system("PAUSE");	
  return 0;
}

Enfim... Não estou a perceber onde está o erro... Dá-me erro a compilar!

Ajuda? Thanks!

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
iceunico    0
iceunico

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

int main(int argc, char *argv[])
{
    float salario,taxa;
    char estado_civil;
    
    printf("Qual o estado civil:");
    scanf("%c",&estado_civil);
    printf("\nQual o salario:");
    scanf("%f",&salario);
    if (estado_civil=='c' || estado_civil=='C')
    {taxa=0.5;
    printf("\nSalario: %.2f\nImposto: %.2f\nSalario Final: %.2f",salario, salario*taxa, salario-salario*taxa);
    }if(estado_civil=='s' || estado_civil=='S')
    {taxa=2;
    printf("\nSalario: %.2f\nImposto: %.2f\nSalario Final: %.2f",salario, salario*taxa, salario-salario*taxa);
    }else
    printf("\nEstado Civil Incorrecto!\n");
  system("PAUSE");	
  return 0;
}

Agora o problema é que quando escolho "C" ou "c" aparece o "Estado Civil Incorrecto!" no fim...

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
KiNgPiTo    6
KiNgPiTo

Tenta:

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

int main(int argc, char *argv[])
{
    float salario,taxa;
    char estado_civil;
   
    printf("Qual o estado civil:");
    scanf("%c",&estado_civil);
    printf("\nQual o salario:");
    scanf("%f",&salario);
    if (estado_civil=='c' || estado_civil=='C')
    {taxa=0.5;
    printf("\nSalario: %.2f\nImposto: %.2f\nSalario Final: %.2f",salario, salario*taxa, salario-salario*taxa);
    }else if(estado_civil=='s' || estado_civil=='S')
    {taxa=2;
    printf("\nSalario: %.2f\nImposto: %.2f\nSalario Final: %.2f",salario, salario*taxa, salario-salario*taxa);
    }else
    printf("\nEstado Civil Incorrecto!\n");
  system("PAUSE");     
  return 0;
}

Se der é porque não tinhas o else associado ao 1º if

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 a nossa Política de Privacidade