从文件加载列

时间:2014-02-17 10:31:32

标签: c

我是初学者,我必须编写一个从文件中读取列的程序。我抛弃了我能写的内容。我不知道如何只加载一个选定的列。如何处理数组的大小。

#define _CRT_SECURE_NO_WARNINGS 
#include <stdio.h>
#include <stdlib.h>

 int main ()

 {
  FILE *pr;
  char fname[100];
  int i, n;


  char tablica[100][100];



  printf ("File name\n");
  scanf ("%s", &fname);
  pr = fopen(fname,"r");


  if (pr == NULL) 
  {
  printf ("can't load file\n");
  exit(-1);
  }

  printf ("column number\n");
  scanf ("%d",&i);
  if (i == NULL)
  { 
      printf ("no column\n");
  }



  while (!feof(pr)) 
  {
  fscanf(pr, "%s",&tablica[i]);
  printf ("%s\n",tablica[i]);
  }
  fclose (pr);
 }

1 个答案:

答案 0 :(得分:0)

文件加载错误,因为scanf ("%s", &fname);读取地址为fname的地址的文件名错误。

尝试传递char数组fname的基址,如scanf ("%s", fname);