We consider a general class of mathematical models P for cancer chemotherapy described as optimal control problems over a fixed horizon with dynamics given by a bilinear system and an objective which is linear in the control. Several two- and three-compartment models considered earlier fall into this class. While a killing agent which is active during cell division constitutes the only control considered in the two-compartment model, Model A, also two three-compartment models, Models B and C, are analyzed, which consider a blocking agent and a recruiting agent, respectively. In Model B a blocking agent which slows down cell growth during the synthesis allowing in consequence the synchronization of the neoplastic population is added. In Model C the recruitment of dormant cells from the quiescent phase to enable their efficient treatment by a cytotoxic drug is included. In all models the cumulative effect of the killing agent is used to model the negative effect of the treatment on healthy cells. For each model it is shown that singular controls are not optimal. Then sharp necessary and sufficient optimality conditions for bang-bang controls are given for the general class of models P and illustrated with numerical examples.