title: fprintf segmentation fault - explain like I'm 5
body: <p>I'm trying to write some strings into a file. This compiles with no warnings, but when I run the a.out it segfaults. It does create the target file, though. I'm very new to C, so I apologize for my formatting and other shortcomings. Here is my code:</p>
  
  <pre><code>#include&lt;stdio.h&gt;
  
  int main (void)
  {
      FILE *fp_out;
  
      char str1[]="four score and seven years ago our";
      char str2[]="fathers broughy forth on this continent,";
      char str3[]="a new nation, concieved in Liberty and dedicated";
      char str4[]="to the proposition that all men are created equal.";
  
      fp_out=fopen("my_file", "w");
  
      if(fp_out!=NULL)
      {
          fprintf(fp_out,"%s\n", str1[100]);
          fprintf(fp_out,"%s\n", str2[100]);
          fprintf(fp_out,"%s\n", str3[100]);
          fprintf(fp_out,"%s\n", str4[100]);
          fclose(fp_out);
      }
      else
          printf("The file \"my_file\" couldn't be opened\n");
  
      return 0;
  }
  </code></pre>