Delegates - Programming

Q1:

Which of the following are the correct ways to declare a delegate for calling the function func() defined in the sample class given below?
class Sample
{
    public int func(int i, Single j)
    {
        /* Add code here. */
    }
}

A delegate d(int i, Single j);

B delegate void d(int, Single);

C delegate int d(int i, Single j);

D delegate void (int i, Single j);

E delegate int sample.func(int i, Single j);

ANS:C - delegate int d(int i, Single j);

No answer description is available. Let's discuss.