An exact Riemann solver for the shallow water equations along with several approximate Riemann solvers are presented. These solutions are then used locally to help compute numerically the global solution of the general initial boundary value problem for the shallow water equations. The numerical method used is the weighted average flux method (WAF) proposed by the author. This is a conservative, shock capturing high resolution TVD method. For shallow water flows where nonlinear effects are important or where abrupt changes (hydraulic jumps) are to be expected the present algorithms can be useful in practice. One and two-dimensional solutions are presented to assess both the Riemann solvers and the WAF method.