使用 C 中的函数将 2D 数组写入文件


void IspisMatriceUDatoteku(int red, int stupac, int *matrica)
{
    FILE *f;
    char imeDatoteke[50];
    printf("nUnesite ime datoteke :");
    scanf("%s", imeDatoteke);
    f = fopen(imeDatoteke, "w");
    if(NULL == f)
        printf("Nevalja!!!n");
    else
    {
        for(int i=0; i<red; i++)
            {
                for(int j=0; j<stupac; j++)
                {
                    fflush(f);
                    fprintf(f, "%d ", matrica[i*stupac+j]);
                }
                fprintf(f ,"n");
            }
    }
}

 int main()
 {
    int red, stupac;
    int *a=NULL;
    printf("Unesite dimenzije matrice :");//matrix dimensions rows and columns
    scanf("%d %d", &red, &stupac);
    a = (int*)malloc(red* stupac* sizeof(int));
    IspisMatriceUDatoteku(red, stupac, a);
 }

我正在尝试将矩阵写入文件。如果我尝试放:

9 8 8 
6 1 8 
4 3 8

使用此代码放入一个文件中,我得到:

9 8 8 
6 1 8 
4 3 

所以我的问题是如何使用这样的函数将最后一个元素放入我的文件中,或者还有另一种方法可以在其中编写矩阵。矩阵在另一个函数中随机生成。谢谢。

很可能

是因为您没有关闭文件。 将你的 flush() 移到最后,或者不要打扰,完成后关闭文件。

相关内容

  • 没有找到相关文章

最新更新