在.C中转置csv

时间:2018-12-16 15:32:01

标签: c csv transpose

我创建了一个程序,用于计算.c中的利息和付款。作为程序的一部分,我必须打印到.csv,但需要将其格式化为行而不是列。有没有办法在程序结尾处转置csv?

我发现的所有其他信息都在python或C ++中。

1 个答案:

答案 0 :(得分:0)

必须在函数调用之前打开文件进行写入

void transposeandprint(FILE *f, double *array, size_t r, size_t c)
{
    for(size_t col = 0; col < c; col++)
    {
        for(size_t row = 0; row < r; row++)
        {
            fprintf(f, "%f%s", array[row * c + col], row == r  - 1 ? "\n" : ",");
        }
    }
}

double data[3][5] = 
{
    {1.0, 2.0, 3.0, 4.0, 5.0},
    {1.1, 2.1, 3.1, 4.1, 5.1},
    {1.2, 2.2, 3.2, 4.2, 5.2},
};

int main()
{
    transposeandprint(stdout, data, 3, 5);
    return 0;
}