Olá! Vim deixar uma sugestão no caso dessa alternativa B, ela cita que os dois lados do operador lógico precisam ser uma expressão booleana (retorna um true ou um false)
Porém na empresa onde trabalho muitas vezes usamos esses operadores lógicos com objetivo de reduzir if's muito extensos e economizar linhas de código. Então utilizamos como "if" o lado esquerdo do operador lógico, e o lado direito o retorno caso a condição seja true ou false.
Por exemplo, no caso da última questão:
if(salario < 2600.0) {
console.log("A sua aliquota é de 15%. Você pode deduzir até R$ 350");
}
Podemos reduzir para:
salario < 2600.0 && console.log("A sua aliquota é de 15%. Você pode deduzir até R$ 350");
Dessa forma podemos usar os operadores lógicos também para simplificar if's extensos.
Enfim foi só uma sugestão que me surgiu quando li a questão, talvez seja uma forma interessante caso alguém ainda não conheça. Um abraço!