当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


C++ count_if()用法及代码示例


count_if()函数返回满足条件的范围内的元素数。

例子:

Input: 0 1 2 3 4 5 6 7 8 9
Output: Total no of even numbers is: 5

Input: 2 3 4 5 6 7 8 9 10 11 12 13
Output: Total no of even numbers is: 6

用法:


count_if(lower_bound, upper_bound, function)

count_if函数采用三个参数,其中前两个参数是元素序列的第一个和最后一个位置(范围中不包括最后一个位置),而第三个参数是采用给定元素的函数作为参数一个接一个地排序,并根据条件返回布尔值
在该函数中指定。
然后,count_if()返回给定序列中比较器函数的元素数
(第三个参数)返回true。

// C++ program to show the working 
// of count_if() 
#include <bits/stdc++.h> 
using namespace std; 
  
// Function to check the  
// number is even or odd 
bool isEven(int i) 
{ 
    if (i % 2 == 0) 
        return true; 
    else
        return false; 
} 
  
// Drivers code 
int main() 
{ 
    vector<int> v; 
    for (int i = 0; i < 10; i++) { 
        v.push_back(i); 
    } 
    int noEven = count_if(v.begin(), v.end(), 
                                     isEven); 
  
    cout << "Total no of even numbers is: " 
         << noEven; 
  
    return 0; 
}
输出:
Total no of even numbers is: 5


相关用法


注:本文由纯净天空筛选整理自Prateek Sharma 7大神的英文原创作品 count_if() in C++ STL。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。