You might consider changing your variable $a to an array where each element contains exactly one value. You could use the above mechanism then:
a[1]="/my/content1"
a[2]="/my/content2"
a[3]="/my/content3"
a[4]="/my/content4"
b="/additional"
i=1
while [ $i -le ${#a[*]} ] ; do
c="${b}${a[$i]}" ; print - "$c" # only display the changed value
# a[$i]="${b}${a[$i]}" # alternatively store it back to the array
(( i += 1 ))
done
If you want to stick with your way of storage content use a for-loop to cycle through all the elements of your variable and add the additional content to every element one at a time:
a="/my/content1 /my/content2 /my/content3 /my/content4"
b="/additional"
i=""
newstring=""
for i in $a ; do
c="${b}${i}" ; print - "$c" # only display the changed value
# newstring="${newstring}${c}" # alternatively concatenate to a new string
done