The Canadian Computing Competition online grader provides immediate feedback on solutions to algorithmic programming problems. It is used for the competition itself and also hosts past contest problems that we highly recommend be used to prepare for the competition.
The CCC Online Grader currently supports C, C++, Python (2.x and 3.x), Pascal, Java, Perl, and PHP.
Please see this document for more detailed instructions and an explanation of other functionality (e.g. using a school account, authenticating students, resetting passwords and monitoring student performance).