#include <stdio.h>
#include <string.h>
 
int main(void)
{
  FILE *fp1, *fp2;
  char fname1[256], fname2[256], fname3[256], str[256];
  int ch, line, col, linecnt=1, colcnt=1, out=0;
 
  printf("filename:"); scanf("%s", fname1);
  if ((fp1 = fopen(fname1, "rt")) == NULL) {
    printf("Can't open input file(%s)\n", fname1);
    return 1;
  }
  strcpy(fname2, fname1);
  strcat(fname2, ".out");
  if ((fp2 = fopen(fname2, "w")) == NULL) {
    printf("Can't open output file(%s)\n", fname2);
    fclose(fp1);
    return 1;
  }
 
  strcpy(fname3, fname1);
  strcat(fname3, ".bak");
  remove(fname3);
 
  printf("insert string:"); scanf("%s", str);
  printf("insert line:"); scanf("%d", &line);
  // printf("insert col:"); scanf("%d", &col);###
  col = 1;
 
  while ((ch = fgetc(fp1)) != EOF) {
    if (out == 0 && line == linecnt && col == colcnt){
      // fprintf(fp2,"%s",str);###
      fprintf(fp2,"%s\n",str);
      out = 1;
    }
    fputc(ch,fp2);
    if (ch == '\n') {
      linecnt++;
      colcnt = 1;
    }else{
      colcnt++;
    }
  }
 
  fclose(fp1);
  fclose(fp2);
 
  rename(fname1, fname3);
  rename(fname2, fname1);
 
  return 0;
}
