可以像这样循环读取txt文件吗? 文件名:input_1,input_2,...,input_20,“input_k”中的“k”为变量。
for ( int k=0; k<20; k++ ){
fr = fopen("input_k", "r"){
for ( int i=0; i<width; i++ ){
for ( int j=0; i<height; i++ ){
fscanf( fr, "%d", &input_k[i*width+j] );
}
}
}
fclose(fw);
}
答案 0 :(得分:1)
我认为这样的事情就是你的目标,它将适用于C89,C99等:
int k;
int input[20][WIDTH][HEIGHT]; // where WIDTH and HEIGHT are
// compile-time constants
...
for ( k=0; k<20; k++ )
{
char fname[10];
sprintf(fname, "input_%d", k);
FILE *fr = fopen(fname, "r");
if (fr)
{
int i;
for (i=0; i<WIDTH; i++ )
{
int j;
for (j=0; j<HEIGHT; j++ )
{
fscanf( fr, "%d", &input[k][i][j] );
}
}
fclose(fr);
}
}
但是,我在这里对你的意图做了一些假设,所以这可能不是你真正想要的。
修改的
修正了一些拼写错误,摆脱了width
和height
变量。