Prompt user for input using substitution variable
When the user types A, the code will look like:

DECLARE 
 localvar char;
BEGIN
 localvar := A;
 IF localvar ='A' then 
  dbms_output.put_line('Please proceed to Level1');
 ELSIF localvar='B' or localvar='C' then
  dbms_output.put_line('Please proceed to Level2');
 ELSIF localvar='D' then
  dbms_output.put_line('Please proceed to Level3');
 ELSE
  dbms_output.put_line('Invalid Entry');
 END IF;
END;
/


Notice the line localvar := A;. This is obviously incorrect, as A is an unknown identifier.

Either type 'A', or put apostrophes in the code:

DECLARE 
 localvar char;
BEGIN
 localvar := '&amp;ENUMBER';
 IF localvar ='A' then 
  dbms_output.put_line('Please proceed to Level1');
 ELSIF localvar='B' or localvar='C' then
  dbms_output.put_line('Please proceed to Level2');
 ELSIF localvar='D' then
  dbms_output.put_line('Please proceed to Level3');
 ELSE
  dbms_output.put_line('Invalid Entry');
 END IF;
END;