簡體   English   中英

我怎樣才能先在列中打印然后在行中打印?

[英]How can I printf first in columns then in lines?

也許這個問題看起來很愚蠢......我想 fprintf 一個按行和列格式化的數據集。 我知道到目前為止的程序

for(i=0;i<number_of_rows;i++)
{
for(j=0;j<number_of_columns;j++)
    fprintf(file,"%g\t",array[i][j]);
fprintf(file,"\n");
}

這段代碼的本質是先填充行,然后填充列。 我有由列創建的數據集。 因此,我想在傳遞到下一列之前填滿每一列。 在運行之前我不知道輸出數據的長度以制作適當的二維數組。 我需要先打印一整列,然后再打印另一列。 我怎樣才能做到這一點?

我需要先打印一整列,然后再打印另一列。 我怎樣才能做到這一點?

這將涉及附加到先前打印的行。 而且,如您所知,向文件中添加內容涉及重寫文件的整個其余部分。 您可能會猜到這會非常低效,而且實施起來也很復雜。

在運行之前我不知道輸出數據的長度以制作適當的二維數組

如果您的問題是數據的長度,那么我假設通過適當的二維數組,您的意思是您打算將列的每個單元格填充為相同的寬度。

在這種情況下,我建議不要浪費時間在先寫專欄的想法上。 相反,在運行時計算寬度。 首先將sprintf轉化為一個字符串矩陣,並計算每個單元格的長度。 然后使用計算出的長度打印字符串矩陣。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM