Este foro ya no está activo, así que no puedes publicar nuevas preguntas ni responder a las preguntas existentes.

Error en programa C para calcular volumen de un cilindro hueco

18 de febrero de 2015

Hola estoy haciendo un pequeño programa para calcular volumen de un cilindro hueco en C. Al parecer no tiene errores de sintaxis pues se compila y corre normalmente. Mi problema es que sean los valores que ingrese, siempre me devuelve un resultado de 0, no logro ver el porque, ¿me ayudan?

Anexo un ejemplo de la formula para calcular el volumen: http://i.imgur.com/V2ocQRD.png

#include <stdio.h>  
const float PI = 3.1416; //define constante de PI
main() {
    float R, r, h, V; //define variables de tipo flotante
    printf("Ingrese radio externo: ");
    scanf("%f", &R);
    printf("Ingrese radio interno: ");
    scanf("%f", &r);
    printf("Ingrese altura: ");
    scanf("%f", &h);
 
    V = PI*h*(R*R - r*r);
 
    printf("El volumen es de: %.2f", &V);
    getchar();
    getchar();
}

Respuestas

#1

El error está en la línea que muestra el resultado:

printf("El volumen es de: %.2f", &V);

El símbolo & indica que en vez de acceder al valor que guarda la variable V, quieres acceder al valor de la posición de memoria en la que se guarda esa variable. Si cambias esa línea por lo siguiente, debería funcionarte bien:

printf("El volumen es de: %.2f", V);

También deberías quitar las dos últimas funciones getchar() porque no hacen falta.

@javiereguiluz

18 febrero 2015, 16:56
#2

Hola @javiereguiluz, muchísimas gracias por tu pronta respuesta y tu explicación. Ha funcionado perfecto.

Saludos desde México :)

@resback

18 febrero 2015, 17:56