Kind of, the %s is a placeholder for a variable; in this case '<span>' . single_cat_title( '', false ) . '</span>' gets placed where the %s is located.
With printf, you can set placeholders that are replaced when outputted in the order that you list them. Example:
printf('My test with two placeholders %s and %s', 'this shows up after placeholders', 'this shows up after and');
There are a lot more placeholders than just %s that can be used with printf, but you won't run into those often in WordPress.