Data Structures, Algorithms, & Applications in C++
Chapter 2, Exercise 19

Let m(n) be the number of multiplications. When n <= 1, m(n) = 0. When n > 1, m(n) = 1 + m(n - 1). Using repeated substitution, we get

m(n) = 1 + m(n - 1)
     = 2 + m(n - 2)
     = 3 + m(n - 3)
     = ...
     = n - 1 + m(1)
     = n - 1, n > 1