d
$A=\left[\begin{array}{ll}{1} & {2} \\ {3} & {4}\end{array}\right] \quad $ $B=\left[\begin{array}{ll}{a} & {0} \\ {0} & {b}\end{array}\right]$
$A B=\left[\begin{array}{ll}{a} & {2 b} \\ {3 a} & {4 b}\end{array}\right]$
$B A=\left[\begin{array}{ll}{a} & {0} \\ {0} & {b}\end{array}\right]\left[\begin{array}{ll}{1} & {2} \\ {3} & {4}\end{array}\right]$$=\left[\begin{array}{ll}{a} & {2 a} \\ {3 b} & {4 b}\end{array}\right]$
Hence, $A B=B A$ only when $a=b$
$\therefore$ There can be infinitely many $B^{\prime} s$
for which $A B=B A$