c - 将包含矩阵的 ASCII 文本文件读入二维数组(C 语言)

标签 c file-io

我有一个包含实数矩阵的 ASCII 文件。我想阅读这个矩阵 C语言中的二维数组。 ASCII 文件包含如下所示的 4x3 矩阵:

2 3 4
4 5 6.7
3 4 8.9
3 4 5.9

谁能建议一个快速的方法来做到这一点?我用谷歌搜索了这个,但我看到的所有解决方案都非常复杂。

最佳答案

关于:

#include <stdio.h>
#include <stdlib.h>

int main(void)
{
    double matrix[4][3];
    int i, j;
    for (i = 0; i < 4; i++)
    {
        for (j = 0; j < 3; j++)
        {
            if (scanf("%lf", &matrix[i][j]) != 1)
            {
                fprintf(stderr, "Failed to read matrix[%d][%d]\n", i, j);
                exit(1);
            }
        }
    }

    for (i = 0; i < 4; i++)
    {
        for (j = 0; j < 3; j++)
        {
            printf("%6.2f", matrix[i][j]);
        }
        putchar('\n');
    }

    return 0;
}

示例输出

  2.00  3.00  4.00
  4.00  5.00  6.70
  3.00  4.00  8.90
  3.00  4.00  5.90

关于c - 将包含矩阵的 ASCII 文本文件读入二维数组(C 语言),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4590886/

相关文章:

c - 不同顺序的相同声明在 gcc 中产生不同的结果

c++ - 跨平台毫秒计时器持续超过 49 天?

java - 如何根据文件名将文件上传并保存到特定位置?

file - 如何写入大于 2 GB 的文件?

c - 如何从 C 中的一行控制台输入创建一个数组?

使用一种功能复制文本和二进制文件?

c++ - Ifstream 在 OSX 上看不到新内容

c - 在C中的有序链表中插入一个节点

c - 为什么char初始化不同? C

C中的客户端服务器多个连接