title: In C, how do I read a file, and store only the doubles - ignoring text before?
body: <p>I need to read in a file that contains text, and then a double for that text. It is simply to get the mean and standard deviation for the set of numbers, so the text that comes before is irrelevant. For example, my input file looks a little like:</p>
  
  <pre><code>preface 7.0000
  chapter_1 9.0000
  chapter_2 12.0000
  chapter_3 10.0000
  </code></pre>
  
  <p>etc..</p>
  
  <p>In this case, it is finding the mean and std dev for the chapters of a book. I have the section of code below, but I'm not quite sure how to "ignore" the text, and only grab the doubles. At the moment this code prints out zeros and only exits the loop when it exceeds the array limit, which I set as a constant to 20 at the beginning of the program.</p>
  
  <pre><code>FILE *ifp;
  char *mode = "r";
  ifp = fopen("table.txt", mode); 
  
  double values[array_limit];
  int i;
  double sample;
  
  if (ifp==NULL)
  {
    printf("cannot read file \n");
  }
  
  else
  {
  i = 0;
  
  do
  {
     fscanf(ifp, "%lf", &amp;sample);  
  
     if (!feof(ifp))
     {
        values[i] = sample;
        printf("%.4lf \n", values[i]);
        i++;
        if (i&gt;=array_limit)   //prevents program from trying read past array size limit//
          {
             printf("No more space\n");
             break;
          }
     }
  
     else
     {
                printf("read complete\n");
                printf("lines = %d\n", i);
     }
  
    }while (!feof(ifp));
    fclose(ifp);
  }
  </code></pre>