Hola,
Lo primero que creo que deberías saber es que en un formulario (tipo post en este caso) solo se añadirán al array $_POST los checkbox que están chequeados y se les asigna el valor que tengas en el atributo value, en este caso "1".
Respecto a las preguntas:
Pregunta 1:
Mi recomendación es que utilices lo siguiente:
Código PHP:
echo ($registro["agua_potable"])?'Sí':'No';
Pregunta 2:
Para que salgan los checkbox seleccionados
NO hay que cambiar su valor. Basta con añadir el atributo checked="checked". Con el fin de hacer el formulario 'populated', mi recomendación respecto al código sería la siguiente:
Código HTML:
<input type="checkbox" name="agua_potable" value="1"<?php echo (isset($agua_potable))?'checked="checked"':(($registro['agua_potable'])?'checked="checked"':'');?>>
De esta manera quedará en el formulario el valor dado en caso de que falle la validación del mismo, y así el usuario no tendrá que chequearlo de nuevo.
Espero que ayude.
Saludos.