gpt4 book ai didi

c - 程序只读取 C 中 Matrix 的第一行

转载 作者:太空宇宙 更新时间:2023-11-04 06:49:47 24 4
gpt4 key购买 nike

我正在尝试从文件中读取 3x3 矩阵。该文件包含如下所示的数据。

5 65 3
3 11 15
22 8 3

到目前为止,我有以下代码,

int data[3][3];
int i = 0;
int j = 0;
FILE *fptr = fopen("data.txt", "r");

for(; i < 3; ++i){
fscanf(fptr, "%d %d %d", &(data[i][0]), &(data[i][1]), &(data[i][2]));
}
i = 0;

for(; i < 3; ++i){
for(; j < 3; ++j){
printf("%d ", data[i][j]);
}
printf("\n");
}

fclose(fptr);

但是,只从文件中读取矩阵的第一行。当我尝试打印时,只显示第一行,然后是两个空行。

最佳答案

只需正确编写 for 循环即可:

for(i = 0; i < 3; ++i){
for(j = 0; j < 3; ++j){

否则,在您的情况下,即使外部循环正常但内部 j 循环正确运行一次,但由于 j==3 并且未重置,它不会在接下来的 2 次外部迭代中恢复。

最后的 2 个 i 循环是空的,什么也不做。

(并且没有必要在for语句之外初始化ij)

关于c - 程序只读取 C 中 Matrix 的第一行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53142969/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com