A great white shark, thought to be up to seven metres long, has been sighted off a South Australian beach, forcing the cancellation of a nearby junior surf lifesaving carnival and the evacuation of swimmers.

The Westpac Lifesaver Rescue Helicopter was patrolling over Marino Rocks, in Adelaide's south, on Sunday afternoon when crew members spotted the shark about 200 metres off shore.

A Surf Life Saving South Australia spokeswoman said the helicopter's crew members estimated the shark to have been six to seven metres long.

"They didn't have a tape measure, of course, but that is how long they estimated it to be," the spokeswoman said, adding that crew members regularly saw sharks from the air, and that this was a particularly large one.