The procedural programming approach allows for general purpose programming, has many points of reference, offers good level control and has portable source code. Procedural programming simply involves following laid down steps to achieve the desired outcome.
A major advantage of procedural programming approach is that it has been done many times before and therefore has multiple reference points. Online websites and numerous books contain simple steps to follow when using this technique.
Another advantage of this approach is that it can be used for general purposes rather than focusing on a particular target outcome. Unlike low level languages, this technique allows programming to be done without having to know the full details of the target CPU.