单项选择题

有以下程序:
  #include<stdlib.h>
  main( )
  { char *p ,* q;
   p=(char * )malloc(sizeof(char) * 20);q=p;
   scanf("%s%s",p,q); printf("%s%s\n",p,q);
  }
  若从键盘输入:abc def<回车>,则输出结果是()

A.def def
B.abc def
C.abc d
D.d d