title: how the break command acts in my test code
body: <p>my test code is as follows:</p>
  
  <pre><code>#include &lt;stdio.h&gt;
  int main(){
      char c;
      while ((c=getchar())!=EOF){
              if(c&gt;='A'&amp;&amp; c&lt;='Z'){
                      c=c-'A'+'a';
                      putchar(c);
              }
              //else break;
      }
      return 0;
  }
  </code></pre>
  
  <p>without the else break command, the while loop went forever, but when I added the "else" command line, the loop only executed for once, I typed "A" it displayed "a" on the monitor and then stopped. But I thought it should be like this: if A~Z is input, then it produces the lower case letter, if the input character is not within the range, eg. a number of something, it would break the loop and execution would stop. Where am I made the mistake? I have tried to add curly brackets after "else" around "break", but the result remained.</p>