how to change my command prompt to show current working directory
You are using zsh so the definition needs to go to .zshrc and it's slightly different (see man zshmisc for all options). The equivalent for \h \w \$ in zsh is
PS1='%m %~%# '


%m The hostname up to the first '.'.  An integer may follow the %  to  specify  how  many
components of the hostname are desired.  With a negative integer, trailing components of
the hostname are shown.
%~ Current  working  directory.   If  an  integer follows the %, it specifies a number of
trailing components of the current working directory to show; zero means the whole path.
If the current working directory  starts  with  $HOME,  that  part  is
replaced  by a ~
%# A # if the shell is running with privileges, a % if not.