You are printing
different things in the two different
printf
statements and you are the wrong format specifiers. It should be:
#include<stdio.h>
int main()
{
int a=10,*p=&a;
printf("%p\n%p\n%p\n%d\n",&p,&a,p,*p);
if ( scanf("%d",p) != 1 ) return -1;
printf("%d..%p\n%d\n%p\n",*p,p,a,&p);
return 0;
}