Is your candy count for Machop 125 and Magikarp 400?
Now with the buddy system at least small candy generation is guaranteed so I'd say going for higher IV in general makes more sense than it did before.
What level are you? Theoretically if you are below 30 the best thing you can do is wait. But if you must do it now, in this case I'd probably recommend going with the highest IV ones, because the CP's are relatively close to each other and Gyarados is a Pokémon you probably don't end up having too many, you might later regret for going for the lower IV. Personally I'm sitting at 620 Magikarp Candy and still haven't evolved Gyarados because the best Magikarp I've found is 96%. If I reach 800 candies before I find a 100% one I will evolve that and keep looking for a better one with the rest of the candies.