Answer
letter ::= lcletter | ucletter
lcletter ::= a | b | c | · · · | z
ucletter ::= A | B | C | · · · | Z
digit ::= 0 | 1 | 2 | · · · | 9
Work Step by Step
--production rules in extended Backus–Naur form for
identifiers in the C programming language
-In C an identifier starts with a letter or an underscore (_) that
is followed by one or more lowercase letters, uppercase
letters, underscores, and digits.
---
identifier ::= letterorus symbol∗
letterorus ::= letter | _
symbol ::= letterorus | digit
letter ::= lcletter | ucletter
lcletter ::= a | b | c | · · · | z
ucletter ::= A | B | C | · · · | Z
digit ::= 0 | 1 | 2 | · · · | 9