【发布时间】:2011-08-13 06:56:57
【问题描述】:
我需要在 C++ 中编写一个完整的布尔函数,它将一个整数数组和它的最大大小作为参数并返回该数组是否有任何值为 0 的元素。
我什至不知道从哪里开始。
提前致谢。
【问题讨论】:
标签: c++ arrays integer boolean
我需要在 C++ 中编写一个完整的布尔函数,它将一个整数数组和它的最大大小作为参数并返回该数组是否有任何值为 0 的元素。
我什至不知道从哪里开始。
提前致谢。
【问题讨论】:
标签: c++ arrays integer boolean
bool TestForZero(int* myArray, int maxSize)
{
for(int ii=0; ii<maxSize; ++ii)
if(myArray[ii] == 0)
return true;
return false;
}
【讨论】:
bool foo(int* array, int size)
{
int i;
for (i = 0; i < size; i++)
{
if (array[i] == 0)
{
return true;
}
}
return false;
}
要调用它,您可以执行以下操作:
int arr[] = { 1, 2, 3, 4, 0, 6};
foo(arr, 6);
【讨论】:
#include <algorithm>
bool ContainsZero(int *arr, int size)
{
return std::find(arr, arr+size, 0) != (arr+size);
}
【讨论】:
bool hasZeroes(int * array, int len) {
int zeroCount = 0;
for (int i = 0; i < len; i++) {
if (array[i] == 0) zeroCount++;
}
return zeroCount > 0;
}
【讨论】:
这听起来很像家庭作业问题,所以我只给你一些概念,让你学习。
需要使用“for”循环,检查数组中每一项的值,找到则返回true,否则循环退出后返回false。
【讨论】:
看看arrays in C++上的教程怎么样?
【讨论】:
bool checkFunction(int *myArray, int size)
{
for (int i=0; i < size; ++i)
{
if (myArray[i] == 0)
return true;
}
return false;
}
您是在谈论这样的事情吗?这将遍历数组,如果任何地方的值为 0,则返回 true。
【讨论】: