gpt4 book ai didi

c - 将txt文件中的字符存储在矩阵中

转载 作者:行者123 更新时间:2023-11-30 16:21:07 25 4
gpt4 key购买 nike

我想将txt文件中的矩阵存储在我的矩阵数组中,我想打印它只是为了知道它是正确存储的,但是当我打印程序时只打印它的一半。

基本上,在我运行问题后,它会打印以下内容:

X . . X
. O

我不知道为什么打印一半,这是我的代码:

我的 tabuleiro.txt 是:

3 4
X . . X
. O . X
. . O .

其中两个数字是矩阵的大小。

*

int main() {
FILE *fp;
char matrix[100][100];
int lines=0,columns=0,i=0,j=0,l=0,c=0;
fp = fopen("tabuleiro.txt","r");
fscanf(fp,"%d %d",&lines,&columns);
for(i=1;i<=lines;i++){
for(j=1;j<=columns;j++){
fscanf(fp,"%c",&matrix[i][j]);
printf("%c", matrix[i][j]);
}
}
fclose(fp);
return 0;
}

*

最佳答案

在上面的程序中,tabuleiro.txt 中数组元素之间的空格未被读取。读取

中的第一行时只读空格
fscanf(fp,"%d %d",&lines,&columns);

修改嵌套的 for 循环,并在之前附加声明,如下所示:

    char whitespace;
for(i=1;i<=lines;i++){
for(j=1;j<=columns;j++){
fscanf(fp, "%c", &matrix[i][j]);
fscanf(fp, "%c", &whitespace);
printf("%c", matrix[i][j]);
printf("%c", whitespace);
}
}

打印所需的结果


X . . X
. O . X
. . O .

关于c - 将txt文件中的字符存储在矩阵中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54992934/

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