  | 
»  | 
 | 
  
 | 
 | 
Statements  |    |  
 statement :=      labeled-statement      compound-statement      expression-statement      selection-statement      iteration-statement      jump-statement   labeled-statement :=      identifier : statement      case constant-expression : statement      default: statement   compound-statement :=      { [declaration-list] [statement-list] }   declaration-list :=      declaration      declaration-list declaration   statement-list :=      statement      statement-list statement   expression-statement :=      [expression];   selection-statement :=      if (expression) statement      if (expression) statement else statement      switch ( expression ) statement   iteration-statement :=      while ( expression ) statement      do  statement while ( expression )      for ([expression]; [expression]; [expression] ) statement   jump-statement :=      goto identifier ;      continue ;      break ;      return [expression] ;  |  
 External Definitions  |    |  
 translation-unit :=      external-declaration      translation-unit external-declaration   external-declaration :=      function-definition      declaration   function-definition :=      [declaration-specifiers] declarator [declaration-list]         compound-statement  |  
  
 |