I'm not quite sure what you think the comma does, but I assure it does not do what you think it does. For expression1, expression2 it evaluates expression1, then throws it out, then uses expression2. So if (numShirt < 5, discount = .00); evaluates numShirt < 5 and whether or not it is true or false, it ignores it and throws it out. Then it evaluates discount = .00, which returns 0 which is false. Then it does the same until it gets to discount =.10 which returns 0.1, which is nonzero, so it is true, which then ends the else if sequence. Also, a ; should not come immediatly after an if statement (except for very specific circumstances)
Replace each line with the equivalant of if (numShirt < 5) discount = .00;
thank you very much, i was very confused on my comma usage... that did help but now it will only output correctly for if (numShirt < 5) and elseif (numShirt <= 5)