A coenzyme is a non-protein compound that is necessary for the functioning of an enzyme.
Coenzymes are NOT enzymes themselves, but they help enzymes to function.
NAD, FAD and coenzyme A are all coenzymes used in respiration.
NADP is a coenzyme used in photosynthesis.
NAD, FAD and NADP work with a group of enzymes called dehydrogenases. They get reduced at the active site to enable another molecule to get oxidised.