Ir ao conteúdo
  • Cadastre-se

C operações linguagem C com caracteres


Robson Miguel

Posts recomendados

Olá, alguém saberia como criar um programa onde solicitamos dois numeros ao usuário e pedimos qual operação ele gostaria de fazer. Se ele colocar * deve ser feita uma multiplicação mostrando a operação e assim por diante. Acho que estou me atrapalhando no If, até agora tenho isso:

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

int main()
{
    float num1, num2, opera, sum, sub, mult, div;

    printf("\n Digite o primeiro numero: " );
    scanf("%f", &num1);

    printf("\n Digite o segundo numero: " );
    scanf("%f", &num2);

    
   printf("\n Qual operacao voce deseja realizar? " );
    scanf("%f", &opera);

    if (opera=*)
    {
        printf("%.2f * %.2f = %.2f\n", num1, num2, num1 * num2);
    }

    if("/")
    {

        printf("%.2f / %.2f = %.2f\n", num1, num2, num1 / num2);
    }

    if("+")
    {

        printf("%.2f + %.2f = %.2f\n", num1, num2, num1 + num2);
    }

    if("-")
    {

        printf("%.2f - %.2f = %.2f\n", num1, num2, num1 - num2);
    }

}

 

Link para o comentário
Compartilhar em outros sites

Bom dia, você precisa compreender como usar os tipos na função scanf.

Quando você quer um caracter use %c como:

char operador;

scanf("%c",operador);

 

O seus if's não estão funcionais, pois você não comparou o operador recebido com o necessário, sendo o correto:

 

if(operador == '*')

else if (operador == '+')

... 

 

E também compreenda que você pode facilitar seu código usando switch case,

pois seus if's podem ocupar muitas linhas.

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

olá, obrigado pela resposta. Só não entendi porque agora o programa encerra antes de eu conseguir colocar o caractere da operação.

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

int main()
{
    float num1, num2, sum, sub, mult, div;
    char opera;

    printf("\n Digite o primeiro numero: " );
    scanf("%f", &num1);

    printf("\n Digite o segundo numero: " );
    scanf("%f", &num2);


   printf("\n Qual operacao voce deseja realizar? " );
    scanf("%c", &opera);

    if (opera == '*')
    {
        printf("%.2f * %.2f = %.2f\n", num1, num2, num1 * num2);
    }

    else if(opera == '/')
    {

        printf("%.2f / %.2f = %.2f\n", num1, num2, num1 / num2);
    }

    else if(opera == '+')
    {

        printf("%.2f + %.2f = %.2f\n", num1, num2, num1 + num2);
    }

    else if(opera == '-')
    {

        printf("%.2f - %.2f = %.2f\n", num1, num2, num1 - num2);
    }

}

 

Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...