problema al programar novato

hola buenos días/tardes/noches
tengo un problema, quiero hacer un proyecto que se trata de hacer un juego de preguntas y respuestas cerradas (si/no) con lcd y botones mi codigo lo tengo asi

#include <LiquidCrystal.h>
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
int buttonSpin = 6;
int buttonNpin = 7;
int led1 = 8;

int buttonStateS = 0;
int buttonStateN = 0;

void setup() {
  lcd.begin(16,2);
  pinMode(led1, OUTPUT);
  pinMode(buttonSpin, INPUT);
  pinMode(buttonNpin, INPUT);
  
}

void loop() {
   buttonStateS = digitalRead(buttonSpin);
   buttonStateN = digitalRead(buttonNpin);
   
  lcd.print(" el teclado es");
  lcd.setCursor(0,1);
  lcd.print("   un sofware   ");

  if(buttonSpin == HIGH){
    lcd.clear();
  }
  if(buttonNpin == HIGH);
    {
      pinMode(led1,HIGH);
      lcd.clear();
    
     }
  
  }

asi comienza pero lo quiero para 5 preguntas no se si esta bien o que tengo que corregir
y como seguir para las demás preguntas

Gracias

si funciona está bien, pero veo un pequeño detalle, que pasara si el usuario presiona si y no al mismo tiempo?
y también lo que puedo ver es que siempre estaría preguntando, no hay una secuencia que "espere" la respuesta del usuario, además si le agregas mas preguntas , se "lanzarán" todas de un solo jalón por el loop.
lo que te recomiendo, y se me ocurre es "hacer la pregunta" entrar a un bucle esperando que cualquiera de los dos botones sea presionado(condifional if (botonS||botonN){break;}) evalua la respuesta y hace la siguiente pregunta. no se si me explico.

el código lo necesito para un juego didáctico con 5 o 10 preguntas que cuando tenga la respuesta este mala prenda el led y lo bloquee el juego, pero como utilisaria el array

Fácil utilizando el legendario diagrama de flujo. dibuja como es que quieres que funcione tu programa