The solution from @har07 is fine if you have a reasonable upper bound on the value of n, but if you don't, you can create a string containing '%' repeated $n times using
XPath 3.0: string-join((1 to $n)!"%")
XPath 2.0: string-join(for $x in 1 to $n return "%", "")