There are 2 issues in your question, and everybody else seem to have (correctly) answered only 1 of it.
So I separate them here:
1) As the others explained any data stored on the physical surface of a hard drive can be found and recovered unless it has been overwriten (if zeroing was a perfect overwriting process, 1 pass should be final. I actually wrote a software doing just that, many years ago (DOS was king, at the time ;-] ). Commercial zeroing software may be imperfect...)
2) Any program is stored as data until read from the hard drive and executed. A hard drive has no means (and no reason) to differentiate different kinds of data.
The second point, implicitely part of your question, and overlooked by the previous answers, mean that a special tool would need to be run to specifically recover this program before being able to run it. such program COULD NOT possibly run again by itself.
Now there is a caveat to that: The exception is the boot sector of the hard drive, which possibly some zeroing software do not touch (although it is easy to do), and VERY SIMPLE (due to small size) program could become resident, and take-over while trying to boot from the hard drive.
However making a clean hard drive install from a CD will not need to boot from the hard drive before installation, and that process will overwrite the boot sector.
There are also tools which allow you to examine the boot sector, and manually modify it (requires expert knowledge)
If you really want to find any program left on your hard drive after zeroing, check the boot sector first.
then use a commercial recovery software (there are several good ones around) to scan your Hard drive for lost content (which may or not be retievable, depending the efficiency of the zeroing software used)
I can point you to good sofware for both purposes, if you need to.