Examveda

What will be the output of the following C++ code?
#include <iostream>  
#include <algorithm> 
#include <vector> 
 
using namespace std;
 
bool IsOdd (int i) 
{ 
	return (i%2)==1; 
}
 
int main () 
{
  vector<int> v;
 
  for (int i=1; i<=10; ++i) 
  	v.push_back(i);
 
  vector<int>::iterator bound;
  bound = partition (v.begin(), v.end(), IsOdd);
 
  for (vector<int>::iterator it=v.begin(); it!=bound; ++it)
    cout << ' ' << *it;
  cout << '\n';
 
  for (vector<int>::iterator it=bound; it!=v.end(); ++it)
    cout << ' ' << *it;
  cout << '\n';
 
  return 0;
}

A. 1 9 3 7 5
6 4 8 2 10

B. 6 4 8 2 10
1 9 3 7 5

C. 6 4 8 2 10
6 4 8 2 10

D. 1 9 3 7 5
1 9 3 7 5

Answer: Option A


Join The Discussion

Related Questions on C plus plus miscellaneous

What is the difference between '++i' and 'i++' in C++?

A. None of the above

B. They both have the same effect

C. '++i' increments the value of 'i' before returning it, while 'i++' increments the value of 'i' after returning it

D. '++i' increments the value of 'i' after returning it, while 'i++' increments the value of 'i' before returning it