What you present in your question is a context-free (CF) grammar,
omitting details about terminal (which symbols are in the generated
text) and non-terminals (which symbols are used only to be rewritten
(expanded), and the initial symbol (which non-terminal you start
with).
BNF (Backus-Naur Form) is a specific syntax (syntactic style) for
presenting CF grammars, so that this missing information is visible
just by looking at the rules.
So, written in BNF your grammar would look like this:
<C> ::= <C> "&&" <E> | <E>
The <>
are for non-terminals and the ""
are for terminals.
But actually it is only a grammar fragment. This is also clearly true of the
first given definition, though it is not explicit.
The reason is that E
is clearly intended to be a non-terminal that can
derive further in other expression, such as (I am guessing an example)
x == y
. But the rules for that are missing.
Other than that syntax issue, you are quite correct with your answer, as Bart van Ingen Schenau already told you.
It is very possible that your instructor does not distinguish BNF and
CF grammar. Many people do not. The name CF grammar is more used by
theoreticians, while BNF is a common, 50 years old, notation used by
many practitioners for computer input ... and much less for casual
work because it is longer to write.