When a user forgets their password, is it better practice to reset the password and email that to the user or just to email the current password to the user's email address.
You should never be in a position to send a user their password. All passwords should be stored in a hashed format, with a sufficiently good hash function that recovering the original password is computationally infeasible.
As for password resets, it depends on the application. If it's a web application, send a time-limited, use-once password reset link and have the user give you a new password. If it's not a web application, it gets a little bit trickier.
it is never good practice to share current password . Its best to reset it with temp password and ask user to generate a new one with its help . This is the best practice being followed reason is if u send the password over mail or sms and in case of account hack etc it will be bigger problem as users normally use same password at multiple places .