Alternate letter copy to another string

Write a program to copy alternate letter from two string to another string.
Example:
String 1: ABCD
String 2: abcd
Result: AbBbCcDd

#include<stdio.h>
void Join_strings(char*,char*,char*);
int main()
{
	char s1[50],s2[50],d[100];
	printf("Enter String 1 = ");
	scanf("%[^\n]",s1);
	printf("Enter String 2 = ");
	scanf(" %[^\n]",s2);
	Join_strings(s1,s2,d);
	printf("String = %s\n",d);
	return 0;
}
void Join_strings(char*p,char*q,char*r)
{
	int i,j,k;
	k = 0;
	for(i = 0,j = 0;p[i] && q[j];i++,j++)
	{
		r[k] = p[i];
		k++;
		r[k] = q[j];
		k++;
	}
	while(p[i])
	{
		r[k] = p[i];
		k++,i++;
	}
	while(q[j])
	{
		r[k] = q[j];
		k++,j++;
	}
	r[k]='\0';
}

Output

Enter String 1 = 1111
Enter String 2 = 0000
String = 10101010
Enter String 1 = 11
Enter String 2 = 0000
String = 101000
Enter String 1 = 1111
Enter String 2 = 00
String = 101011