gpt4 book ai didi

c - 从二维数组发出读取输入数据

转载 作者:太空宇宙 更新时间:2023-11-04 04:43:59 26 4
gpt4 key购买 nike

我正在尝试制作一个矩阵代数程序,所以我从一个预定义的 3x3 矩阵开始。遇到一些元素没有被正确读入 2D 数组的问题,所以我隔离了一个。问题是一行中的最后一个数字被打印为下一行中的第一个元素。即 array[1][2] 被打印为 array[2][0] 是什么。

同样,如果我有一个从 1 到 9 的 3x3 矩阵,并且我想要第 1 行第 3 列(即 3)的值,它会给我 4。第 2 行第 3 列也是如此;值是 6,但它给了我 7。

我在输入前输入了一个打印语句来显示计数器值,它们是正确的。我猜 scanf 出了点问题,但我真的很困惑。任何帮助将不胜感激!

#include <stdio.h>

int matrix1[2][2];

void main(void)
{
int i = 0, j=0; //Row and column subscripts for the first matrix

//======================================================================================================//
//First Matrix
printf("This is for the first matrix");
for(i=0; i < 3; i++) //Start with row
{
for(j = 0; j < 3; j++)
{
printf("\nInsert the value at row %d, column %d: ", i+1,j+1); //+1 since array's begin at 0
printf("\ni is %d, j is %d", i,j); //Shows what elements the input will go into
scanf("%d", &matrix1[i][j]); //Enter value into row i column j
}

}
printf("\n\n%d", matrix1[1][2]); //test to see what's in the element
}

最佳答案

#include <stdio.h>

#define ROWS 3
#define COLS 3

int matrix1[ROWS][COLS];

void main(void)
{
int i, j; //Row and column subscripts for the first matrix

//================================================================================
//First Matrix
printf("This is for the first matrix");
for(i=0; i < ROWS; i++) //Start with row
{
for(j = 0; j < COLS; j++)
{
printf("\nInsert the value at row %d, column %d: ", i+1,j+1);
printf("\ni is %d, j is %d", i,j);
scanf("%d", &matrix1[i][j]);
}
}

printf("\n\n%d", matrix1[1][2]); //test to see what's in the element
}

关于c - 从二维数组发出读取输入数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23034853/

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