2

我有一个 matrix.txt 文件,其中有一个这样写的矩阵:

1 2 3

4 5 6

7 8 9

我需要编写一个小 C 程序,将此文件作为输入,并以与 .txt 文件相同的方式打印此矩阵。

这意味着当“./a.out matrix.txt”的输出必须与我的 .txt 文件中的内容完全相同时:

1 2 3

4 5 6

7 8 9

我的问题是我所能做的就是这个功能:

void printMatrice(matrice) {
    int x = 0;
    int y = 0;

    for(x = 0 ; x < numberOfLines ; x++) {
        printf(" (");
        for(y = 0 ; y < numberOfColumns ; y++){
            printf("%d     ", matrix[x][y]);
        }
        printf(")\n");
    }
}

但这一点都不好。

有人有想法吗?

谢谢

4

4 回答 4

9

试试这个简单的代码

int row, columns;
for (row=0; row<numberOfLines; row++)
{
    for(columns=0; columns<numberColumns; columns++)
    {
         printf("%d     ", matrix[row][columns]);
    }
    printf("\n");
}
于 2013-01-04T23:00:13.690 回答
1

我稍微修改了 user1929959 的代码,因为我有一些奇怪的打印。如果您愿意,可以尝试复制粘贴此代码,看看它是如何运行的。这里只是一个n00b学生。希望我能有所帮助(我也在挣扎);)

矩阵打印代码

void main ()
{

    int matrix [3][4] = { {1, 2, 3, 4},
                           {5, 6, 7, 8},
                           {9, 10, 11, 12}
                         };
    
    
    int row, column=0;

    for (row=0; row<3; row++)
     {
        for(column=0; column<4; column++)
            {printf("%d     ", matrix[row][column]);}
            printf("\n");
     }
    
    getchar();
}
于 2015-09-01T20:41:36.533 回答
0

您需要添加的只是: put //printf("\n"); 在循环中,负责打印 ROWS。因此,\n:它将在每行完成后更改行。

于 2016-10-02T22:04:21.677 回答
0

这是怎么做的

#include <stdio.h>

#include <stdlib.h>

void main()
{
 int matrix[3][3]={{1,2,3},
{4,5,6},{7,8,9}};
int columns,rows;
for(columns=0;columns<=2;columns++){
    for(rows=0;rows<=2;rows++){
        printf(" %d " ,matrix[columns][rows]);
    }
    printf("\n");
}

}

于 2018-04-04T11:35:55.527 回答