References - Programming

Q1:

Which of the following statement is correct about the program given below?
#include<iostream.h> 
class AptitudeCrack
{
    int x, y; 
    public:
    void SetValue(int &a, int &b)
    {
        a = 100;
        x = a;
        y = b;
        Display();
    }
    void Display()
    {
        cout<< x << ' ' << y; 
    }
};
int main()
{
    int x = 10;
    AptitudeCrack objAptitude;
    objAptitude.SetValue(x, x);
    return 0;
}

A The program will print the output 100 10.

B The program will print the output 100 100.

C The program will print the output 100 garbage.

D The program will print two garbage values.

E It will result in a compile time error.

ANS:B - The program will print the output 100 100.

No answer description is available. Let's discuss.