3. Derivation:
<switch_stmnt>=>switch ( <int_exp> ) { <case_list> }
=>switch ( <exp> ) { <case_list> }
=>switch ( <term> ) { <case_list> }
=>switch ( <num_exp> ) { <case_list> }
=>switch ( <int_id> ) { <case_list> }
=>switch ( x ) { <case_list> }
=>switch ( x ) { <case_line><case_line><default_line> }
=>switch ( x ) { case <int_const>:<stmnt_list><case_line><default_line> }
=>switch ( x ) { case 1: <stmnt_list><case_line><default_line> }
=>switch ( x ) { case 1: <stmnt>break; <case_line><default_line> }
=>switch ( x ) { case 1: statement<count>;break; <case_line><default_line> }
=>switch ( x ) { case 1: statement1;break; <case_line><default_line> }
=>switch ( x ) { case 1: statement1;break; case <int_const>:<stmnt_list><default_line> }
=>switch ( x ) { case 1: statement1;break; case 2:<stmnt_list><default_line> }
=>switch ( x ) { case 1: statement1;break; case 2:<stmnt>break;<default_line> }
=>switch ( x ) { case 1: statement1;break; case 2:statement<count>;break;<default_line> }
=>switch ( x ) { case 1: statement1;break; case 2:statement2;break;<default_line> }
=>switch ( x ) { case 1: statement1;break; case 2:statement2;break;default:<stmnt_list }
=>switch ( x ) { case 1: statement1;break; case 2:statement2;break;default:<stmnt>}
=>switch ( x ) { case 1: statement1;break; case 2:statement2;break;default:statement<count>;}
=>switch ( x ) { case 1: statement1;break; case 2:statement2;break;default:statement3;}