C Preprocessor - Programming

Q1:

What will be the output of the program?
#include<stdio.h>
#define JOIN(s1, s2) printf("%s=%s %s=%s \n", #s1, s1, #s2, s2);
int main()
{
    char *str1="India";
    char *str2="Aptitude";
    JOIN(str1, str2);
    return 0;
}

A str1=AptitudeCrack str2=Aptitude

B str1=India str2=Aptitude

C str1=India str2=AptitudeCrack

D Error: in macro substitution

ANS:B - str1=India str2=Aptitude

No answer description is available. Let's discuss.