title: Should we break the default case in switch statement?
body: <p>Assuming this example code (<a href="http://www.cprogramming.com/tutorial/c/lesson5.html" rel="noreferrer">source</a>):</p>
  
  <pre><code>#include &lt;stdio.h&gt;
  
  void playgame()
  {
      printf( "Play game called" );
  }
  void loadgame()
  {
      printf( "Load game called" );
  }
  void playmultiplayer()
  {
      printf( "Play multiplayer game called" );
  }
  
  int main()
  {
      int input;
  
      printf( "1. Play game\n" );
      printf( "2. Load game\n" );
      printf( "3. Play multiplayer\n" );
      printf( "4. Exit\n" );
      printf( "Selection: " );
      scanf( "%d", &amp;input );
      switch ( input ) {
          case 1:            /* Note the colon, not a semicolon */
              playgame();
              break;
          case 2:
              loadgame();
              break;
          case 3:
              playmultiplayer();
              break;
          case 4:
              printf( "Thanks for playing!\n" );
              break;
          default:
              printf( "Bad input, quitting!\n" );
              break;
      }
      getchar();
  
      return 0;
  }
  </code></pre>
  
  <p>should we use a <code>break;</code> in the <strong>last</strong> <code>default</code> case? If I remove it, I see the same behaviour of the program. However, I saw that other examples also use a <code>break;</code> in the <code>default</code> case.</p>
  
  <p>Why? Is there a reason?</p>