a.out is the standard default filename where gcc stores the results of compilation/linking. Someone could conceivably overwrite it if they're messing with building the sources by hand, and don't bother specifying the -o switch to name a file.
Perhaps another name should be chosen for the example data file?
Just a suggestion.