Your best bet is probably the free, online book available here:
http://www.dspguide.com/
You might also want to explore the handouts available for graduate classes at schools like Stanford.
http://www.stanford.edu/class/ee264/Handouts.html
You can code up some example DSP algorithms in the language of your choice. C is certainly acceptable, but I think you'd probably get a better understanding of the hardware implementation of DSP by actually writing your examples in Verilog.
If you're interested in the hardware implementation, you can download a free, fairly capable Verilog simulator here:
http://www.pragmatic-c.com/gpl-cver/
You may also want to learn how to plot things with Gnuplot, as it'll make visualizing the inputs and outputs very easy.
http://www.gnuplot.info/docs/gnuplot.html#xtics
If you are running Windows, you can download and install the Cygwin Unix-like environment, and then run cver and gnuplot from within it.
http://www.cygwin.com/
Those resources should be adequate to give you an understanding of DSP similar to that of many practicing engineers.
If you're trying to explore audio effects, you should be able to pass audio waveform files through your Verilog simulator and then listen to the results. Getting "real-time" behavior (from a microphone, through your computer, and out through the speakers) would be a little more challenging, but mainly because Windows makes it challenging. There are probably many such Windows projects on sourceforge.net that you can gut and use for a skeleton, like this one:
http://sourceforge.net/projects/htpcdsp/
Feel free to ask any questions you might have here. We'd be happy to help.
- Warren