Entonces te sugiero una función (la estaba pensando mientras entraba al post, habiendo leído el título que lo explica muy bien

)
Me la acabo de inventar..
Código PHP:
function vacio($string)
{
if (is_numeric($string) && $string == 0)
{
return FALSE;
}
else if ($string == "")
{
return TRUE;
} else {
return FALSE;
}
}
Y en vez de
empty() usas
vacio(). Así:
Código PHP:
<?php
function vacio($string)
{
if (is_numeric($string) && $string == 0)
{
return FALSE;
}
else if ($string == "")
{
return TRUE;
} else {
return FALSE;
}
}
if(isset($_POST['examinar']) && $_POST['examinar'] == 'Examinar'){
if(vacio($_POST['respuesta_1']) == FALSE && vacio($_POST['respuesta_2'])==FALSE && vacio($_POST['respuesta_3'])==FALSE){
$respuesta_1 = $_POST['respuesta_1'];
$respuesta_2 = $_POST['respuesta_2'];
$respuesta_3 = $_POST['respuesta_3'];
$promedio = ($respuesta_1 + $respuesta_2 + $respuesta_3) / 3;
// este tres es la cantidad de preguntas del form,
// debe variar dependiendo de las mismas
}else{
echo "debe responder todas las preguntas";
}
}
?>
Espero que te sirva! Suerte