gpt4 book ai didi

c - for循环中的printf语句

转载 作者:行者123 更新时间:2023-11-30 18:17:52 25 4
gpt4 key购买 nike

所以我尝试比较这两个数组的值,并且创建了一个测试来比较每个数组的每个元素。但是,我只希望 printf 语句仅在每个数组的所有元素彼此相等时打印一次。

此代码打印每个相等元素的语句,但如果所有元素都相同,我只需要打印一次。我该怎么办?

int MatrixEqualsActual[3][3] = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}};
int MatrixEquals[3][3] = {{3, 5, 9}, {1, 2, 6}, {9, 0, 1}};

int i, j;
for (i = 0; i < 3; i++) {
for (j = 0; j < 3; j++) {
if(MatrixEqualsActual[i][j] == MatrixEquals[i][j])
{
printf("PASSED (2/2): MatrixEquals()\n");
}
}
}

最佳答案

只需使用一个标志,仅在设置时才打印!喜欢:

...
bool flag = true;
for (i = 0; i < 3; i++)
{
for (j = 0; j < 3; j++)
{
if(MatrixEqualsActual[i][j] != MatrixEquals[i][j])
{
flag = false;
break; // we break since we already know that at least one element doesn't match.
}
}
}
if(flag)
{
printf("PASSED (2/2): MatrixEquals()\n");
}

记住#include <stdbool.h>否则你将无法在 C 中使用 bool 类型。如果您不想包含该内容,则 int变量会做得很好!

关于c - for循环中的printf语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35010307/

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