questa, mi sembra la soluzione più semplice (meno elaborata)
è un semplice programmino in C
codice:
#include <stdio.h>
#include <string.h>
#include <stdlib.h>



void verifica(char *domanda, char *risposta)
{
    scanf("%s", domanda);

    if(!strcmp(domanda, risposta))
        printf("Risposta esatta!\n\n");
    else
        printf("Risposta errata!\n\n");    
}    



int main()
{
    char domanda1[10], risposta1[] = "roma";
    char domanda2[10], risposta2[] = "4810";
    char domanda3[10], risposta3[] = "bianco";
    /* qua inserisci altre domande (blocco verde) con relative rispsote */


    printf("QUIZZ* (inserisci solo caratteri minuscoli)\n\n");
    
    printf("[1] La capitale d'Italia?: ");
    verifica(domanda1, risposta1);
        
    printf("[2] L'altezza del monte Bianco?: ");
    verifica(domanda2, risposta2);
    
    printf("[3] Di che colore era il cavallo bianco di Napoleone?: ");
    verifica(domanda3, risposta3);

    /* qua formuli altre domande (blocco blu) e verifichi il risultato */ 

    
    system("pause");
    return 0;
}
Se apri con il blocco note l'eseguibile
si leggono le risposte (stringhe)
p.s. per renderlo più "sicuro" è sufficiente sostituire le stringhe "roma", "4810" e "bianco" con dei caratteri 'r', 'o', 'm', 'a', e fare la validazione (domanda/risposta) confrontando carattere per carattere:
codice:
if(risposta1[0] == 'r' && risposta1[1] == 'o' && risposta1[2] == 'm' && risposta1[3] == 'a')
    printf("Risposta esatta!\n\n");
else
    printf("Risposta errata!\n\n");