c++ 找不到数组中偶数元素的和,并显示奇怪的错误消息

fcipmucu  于 2023-03-05  发布在  其他
关注(0)|答案(1)|浏览(131)

我们的教授让我们做4个函数。一个打印数组,求数组的最大值,最小值,以及偶数元素的和。
我的代码一直在工作,直到我编写了evenSum函数,出现了以下错误消息:
错误:没有匹配的'operator〈〈'(操作数类型是'std::ostream' {aka 'std::basic_ostream'}和' void ')
下面是我的代码:

#include <iostream>
using namespace std;

//print array
void print(int ar[4])
{
    for(int i=0; i<4; i++)
    cout<<ar[i]<<'\t';
    cout<<endl;
}

// return the max value 
int maxValue(int ar[4])
{
    cout<<"Array max value: ";
    int max= ar[0];
    for(int i=1; i<4; i++)
    if(ar[i]>max)
    max= ar[i];
    return max;
}

// return the min value 
int minValue(int ar[4])
{
    cout<<endl;
    cout<<"Array min value: ";
    int min= ar[0];
    for(int i=1; i<4; i++)
    if(ar[i]<min)
    min= ar[i];
    return min;
}
// the sum of the even elements
void evenSum(int ar[4])
{
    cout<<endl<<"The sum of even elements: ";
    int sum=0;
    for(int i=0; i<4; i++)
    if(i%2==0)
    sum+= ar[i];
    cout<<sum;
}

int main()
{
    int ar[4]={1,2,3,4};
    
    print(ar);
    cout<< maxValue(ar);
    cout<< minValue(ar);
    cout<< evenSum(ar);
    
}

我期望代码给出偶数元素的和,但我不太理解错误消息或如何修复它。

cetgtptt

cetgtptt1#

void:是一个孤独的类型,除了少数几种情况外,没有关联的值可以挂在它身上,最常见的是作为void函数的返回类型。
你把他和ostream放在一起,尽管他喜欢一个人站着。

相关问题