I would like to know if there is any reason why many programming languages use the notation % for the modulo operator?
It is used in the most "famous" languages:

C
C++
C#
Go
Java
Julia
Lua
Perl
Python


The earliest known use of % for modulo was in B, which was the progenitor of C, which was the ancestor (or at least godparent) of most languages that do the same, hence the operator's ubiquity.
Why did Thompson and Richie pick %? It had to be a printable ASCII character that wouldn't conflict with B's other features. % was available, and it resembles the / division operator, making it the obvious choice.
p.s. the creator of ASCII invented \ to represent "reverse division", so it wasn't a candidate for modulo.
