1

scanf() 関数を使用して行列を変数に代入していますが、テキスト ファイルから行列を呼び出したいと考えています。

これが私のコードです:

  int rows;
  int columns;
  float weight;
  float step;

  printf("Enter the number of rows and columns of the matrix.\n");
  scanf("%d%d", &rows,&columns);

  printf("Enter step for the weight.\n");
  scanf("%f", &step);

  int a[rows][columns], b[rows][columns],i,j;
  float c[rows][columns];

  printf("Enter the First matrix->");
  for(i=0;i<rows;i++)
      for(j=0;j<columns;j++)
           scanf("%d",&a[i][j]);
  printf("\nEnter the Second matrix->");
  for(i=0;i<rows;i++)
      for(j=0;j<columns;j++)
           scanf("%d",&b[i][j]);
4

1 に答える 1

5

2つの可能な解決策:

1) コードを変更せずに保持できます。そして、次の方法でバイナリ プログラムを呼び出す必要があります。

$ myprogram < myfile.txt

myfile.txtこのソリューションでは、stdin ストリームがファイル ストリームに置き換えられます。

2) which read from stdinfscanf()を使用する代わりに、ファイルから読み取るために使用するscanf()

于 2013-06-18T16:15:22.147 に答える