The syntax of the parentheses depend on which regex dialect you use.
grep -c '^([0-9]*) [A-Za-z]*.$' file
uses literal parentheses, while
grep -Ec '^([0-9]+) [A-Za-z]+.$' file
needs backslashes. Note also the use of single quotes to prevent the shell from intervening with the arguments.
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…