I changed this
static int i=0;
to this:
static int purchaseIndex = 0;
and then all references to i in get_quantity() were changed as appropriate. Why? Because I don't like variables that are going to hang around, like globals or statics, be the same name as other variables I use becaue it makes debugging to hard.
I corrected the problem previously pointed out in get_item_name().
I changed this
total = subTotal * TAX_RATE;
to this
total = subTotal + (subTotal * TAX_RATE);
and hard coded an array of items instead of reading from file.
Everything worked fine through 1 set of transactions.