Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Programa parou de responder

Boa tarde, comecei o curso de computação em C e o professor pediu aos alunos para criarem um programa que calculasse a perímetro e a área de um circulo. Acabei criando esse programa mas ao escolher umas das duas opções (1=perímetro, 2=área) o programa para de responder e sai. Alguém pode me ajudar? Agradeço desde já.

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

int main() {
    int raio,diametro,perimetro,area,escolha1;
    float pi = 3.14;
    printf("*********************************************\n");
    printf("*Bem vindo a calculadora de circunferencias*\n");
    printf("*********************************************\n");
    printf("O que deseja calcular? Escolha o numero\n");
    printf("1 : perimetro\n");
    printf("2 : area\n");
    scanf("%d", escolha1);
    if(escolha1 == 1) {
        printf("Qual e o diametro da circunferencia, lembre-se de que o diametro e duas vezes o raio. ");
        scanf("%d\n", diametro);
        perimetro = diametro * pi;
        printf("o perimetro e de: %f\n", perimetro);
    }
    else {
        printf("Qual e o diametro da circunferencia, lembre-se de que o diametro e duas vezes o raio. ");
        scanf("%d\n", diametro);
        raio = diametro / 2;
        area = pi * raio * raio;
        printf("a area e de: %f\n", area);
    }
}
1 resposta
solução!

Olá Victor!

O erro está na hora de usar o scanf. É necessário sempre antes de se ler uma variável no scanf, colocar o símbolo &, senão o código não funciona. Ex:

scanf("%d", &escolha1);

Espero ter ajudado.