title: what does this return statement mean
body: <p>In the book these is a simple C function:</p>
  
  <pre><code>char *month_name(int n)
  {
    static char *name[] = {
    "Illegal month",
    "January", "February", "March",
    "April", "May", "June",
    "July", "August", "September",
    "October", "November", "December"
    };
  
    return (n &lt; 1 || n &gt; 12) ? name[0] : name[n];
  }
  </code></pre>
  
  <p>What does this function do is easy to understand, but I don't understand the return statement, how does this return statement work here.</p>