Why is this code to find the minimum number in an array assuming the first element is smallest? <pre><code>#include&lt;cs50.h&gt; #include&lt;stdio.h&gt; int main (void) { int a,array[100],min,c,b=0; printf("Enter a number that you wish: \n"); a=GetInt(); printf("Now Enter %i Independently \n",a); for(int b=0; b&lt;a; b++) array[b]=GetInt(); min = array[0]; for ( c = 0 ; c &lt; b ; c++ ) { if ( array[c] &lt; min ) min = array[c]; } printf("Minimum value is %i.\n", min); return 0; } </code></pre> <p>Output</p> <pre><code>Enter a number that you wish: 4 Now Enter 4 Independently 2 3 1 4 Minimum value is 2. </code></pre> <p>But I am sure the minimum number is 1 — what's wrong?</p>