如何在Matlab中使用fprintf简短地编写多个变量?

Alf*_*fer 2 matlab printf

我的代码是这样的

a= [2 4 5 8 6 7 88 9]
b= [12.8 41.3 13.7]
c= [16 18 20 10.1 17.5 49.5]
fprintf(out_file,'%d %d %d %d %d %d %d %d %f %f %f %d %d %d %f %f %f',a,b,c)
Run Code Online (Sandbox Code Playgroud)

是否可以用较短的形式编写转换(%d....%ffprintf而不是重复多次?

还是我可以使用其他命令将其写入文件?

Lui*_*ndo 5

该答案假设您不需要尾随十进制零。也就是说,[4 4.1]应以而4 4.1不是4 4.10000或印刷4.00000 4.10000

a = [2 4 5 8 6 7 88 9];
b = [12.8 41.3 13.7];
c = [16 18 20 10.1 17.5 49.123456789]; % example with 9 decimal figures
Run Code Online (Sandbox Code Playgroud)