Check printer function (or subroutine) - Convert to English text from the input value. 12.34 -> "twelve dollars and thirty four cents". For the range .01 to 9999.99 assuming valid input.
Common Lisp, 95
Newline not counted in:
(lambda(n &aux(d(floor n))(c(round(*(- n d)100)))) (format()"~R dollar~P and ~R cent~P"d d c c))
Sample use (assigning it to f):
CL-USER> (f .01) "zero dollars and one cent" CL-USER> (f 12.34) "twelve dollars and thirty-four cents" CL-USER> (f 9999.99) "nine thousand nine hundred ninety-nine dollars and ninety-nine cents"