That does not happen with guppies. They stay the same sex for life.
What are guppies
Guppies are livebearers. So they don't lay eggs. Male guppies WILL eat their own baby guppies. They will eat any baby guppy they see. It doesn't matter if it's their own or some other guppies'. Male and female guppies eat baby guppies.
Male guppies are considerably smaller than females of the same species.
Colours on fish are often associated with their attractiveness to members of the opposite sex.
yes.
Male guppies have a pointier anal fin and a bigger tail than the female and the female is larger than the male.
Never, A male can get a sex change but still is considered a male.
Yes they do
Many male guppies have 'black spots' but if by "black spot" you mean "gravid spot" then no, a male guppy can not be 'gravid' because gravid is the equivalent of "pregnant" and male guppies can not get pregnant.
the fish have to have sex
Female guppies stay very plain to help with camouflage. Male guppies get color to attract females.