Ciò che presenti nella tua domanda è una grammatica context-free (CF) ,
omettendo dettagli sul terminale (quali simboli sono nel generato
testo) e non terminali (quali simboli vengono utilizzati solo per essere riscritti
(espanso) e il simbolo iniziale (quale non terminale si avvia
con).
BNF (Backus-Naur Form) è una sintassi specifica (stile sintattico) per
presentare grammatiche CF, in modo che questa informazione mancante sia visibile
solo osservando le regole.
Quindi, scritto in BNF la tua grammatica sarebbe simile a questa:
<C> ::= <C> "&&" <E> | <E>
Il <>
è per non-terminali e il ""
è per i terminali.
Ma in realtà è solo un frammento di grammatica. Questo è anche chiaramente vero per
prima definizione data, anche se non è esplicita.
Il motivo è che E
è chiaramente destinato a essere un non-terminale che può
derivare ulteriormente in altre espressioni, come (sto indovinando un esempio)
%codice%. Ma mancano le regole.
Oltre a questo problema di sintassi, sei perfettamente corretto con la tua risposta, come già ti ha detto Bart van Ingen Schenau.
È molto probabile che il tuo istruttore non distingua BNF e
Grammatica CF. Molte persone non lo fanno. Il nome CF grammatica è più usato da
teorici, mentre BNF è una notazione comune, vecchia di 50 anni, usata da
molti praticanti per l'input da computer ... e molto meno per casual
lavoro perché è più lungo da scrivere.