title: Float in if statements returns negative instead given value
body: <p>Hello I am learning C and I am confused why this certain line returns -126.00 instead of 130.00</p>
  <p>here is the source code:</p>
  <pre><code>char course1(char course, float price){
  
      if(course == 'E' || course == 'e') {
          printf(&quot;You have taken PHP!\n&quot;);
          price = 130.00;
          return price; //returns -126.00
      }
      else
          printf(&quot;Invalid!\n&quot;);
      return 0;
  }
  </code></pre>
  <pre><code>int main() {  
     char course;
     float totalCourse;
     float y = 0;
     scanf(&quot; %c&quot;, &amp;course);
     totalCourse += course1(course, y);
     printf(&quot;In main, the total is %.2f&quot;, totalCourse);
  
     return 0;
  }
  </code></pre>
  <p>When I run the code, and inputs 'E' C returns -126 instead of 130 as given in the source code. Can anyone explain why it happens?</p>