【发布时间】:2020-07-31 21:46:34
【问题描述】:
所以我有一个按升序排列的数组(由 9 个元素组成),在另一个函数中我有一个 3x3 矩阵(相同的元素但无序),我希望 找到数组中每个元素的行和列矩阵,但我写不出来:
int find_path(int matrix_1[3][3], int array_1[9], int n) {
int i = 0;
for (int j = 0; j < 3; j++) {
for (int k = 0; k < 3; k++) {
if (i == 9) {
break;
}
if (matrix_1[j][k] == array_1[i]) {
printf("(%d, %d)", j, k);
j = 0;
k = 0;
i++;
}
}
}
}
【问题讨论】:
-
你说“我有一个 3x3 矩阵”,那么
int matrix_1[][100]是什么意思?我期待int matrix_1[3][3]。请创建一个minimal reproducible example 来演示如何调用该函数(第一个参数特别有趣)以及它是如何失败的。另外,请尝试我的预期。也许它已经解决了。 -
@Ahmad Labouff 为什么函数的返回类型是int?函数返回什么?
-
@Ahmad Labouff 会不会是矩阵不包含数组中的元素?
-
matrix_1[j][k] = array_1[i]我确定你的意思是== -
我和@SaymoinSam 在一起。结合我的尝试他们的建议。这两个问题中的任何一个都可能破坏您的功能。
标签: c arrays loops for-loop nested-loops