我正在尝试编写一个程序,使用 for 循环检查数组中的所有值是否相等,但除了不断重复之外,我无法找到一种方法让 if 语句检查数组中的每个值是否相等“if a[i] == a[1] && a[i] == a[0]”
等等。我不想这样做,因为我希望它适用于任何大小的任何数组。非常感谢任何帮助!
for (unsigned i = 0; i < val; i++){
if (a[i] == a[0])
return true;
else
return false;
}
最佳答案
for (unsigned i = 0; i < val; i++) {
if (a[i] != a[0]) {
return false;
}
}
return true;
应该可以了。
在这种情况下,代码将立即因不匹配的值而失败。然而,在匹配值上它只是继续检查(因为我们知道无论如何我们都需要测试数组的每个元素)。一旦完成,它就知道一切顺利(因为我们没有提前返回)并返回 true。
关于C++如何检查数组中的元素是否相等?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32391079/