#include <stdio.h>
int min(int x,int y);

int main(void) {
  int x,y,ans;
  printf("1番目の整数を入力してください。\n");
  scanf("&d",&x);
  printf("2番目の整数を入力してください。\n");
  scanf("%d",&y);
  printf("\n\nx=%d,y=%d\n\n",x,y);
  ans = min(x,y);
  printf("最小値は%dです",ans);
  return 0;
}

int min(int x,int y) {
  if(x>y) {
    return y;
  } else {
    return x;
  }
}

が期待通りに動きません。最初のscanfが実行されてないみたいです。
なぜ?