yo lo haría así:
Cita: <html>
<head>
<script language="JavaScript" type="text/javascript">
var c=new Array('num1','num2','num3','num4','num5');
function marcar(check){
for(z=0;z<c.length;z++){
document.forms[0][c[z]].checked=check.checked;
}
calcular();
}
function calcular(){
tt=0;
for(z=0;z<c.length;z++){
tt+=(document.forms[0][c[z]].checked)?parseInt(document.forms[0][c[z]].value):0;
}
document.forms[0]['total'].value=formatCurrency(tt);
}
function formatCurrency(num)
{
num = num.toString().replace(/\€|\,/g,'');
if(isNaN(num))
num = "0";
cents = Math.floor((num*100+0.5)%100);
num = Math.floor((num*100+0.5)/100).toString();
if(cents < 10)
cents = "0" + cents;
for (var i = 0; i < Math.floor((num.length-(1+i))/3); i++)
num = num.substring(0,num.length-(4*i+3))+','+num.substring(num.length-(4*i+3));
return (num + "." + cents+ " €" );
}
</script>
</head>
<body>
<form method="POST">
<p align="center"><font size="2">El total Anual es: <input readonly size="6" name="total">
IVA. Incluido</font></p>
<table border="0" width="100%" cellspacing="0" cellpadding="0">
<tr>
<td width="752" align="left" colspan="5">
<p align="center"><input type="checkbox" onclick="marcar(this)" value="ON"><font size="2">Todos</font>
</tr>
<tr>
<td width="214" align="left"> <font size="2"><input onclick="calcular()" type="checkbox" value="34.40" name="num1">Uno</font></td>
<td width="108" align="left">
<p align="left"><font size="2"><input onclick="calcular()" type="checkbox" value="34.40" name="num2">Dos</font></td>
<td width="108" align="left">
<p align="left"><font size="2"><input onclick="calcular()" type="checkbox" value="34.40" name="num3">Tres</font></td>
<td width="108" align="left">
<p align="left"><font size="2"><input onclick="calcular()" type="checkbox" value="34.40" name="num4">Cuatro</font></td>
<td width="216" align="left">
<p align="left"><font size="2"><input onclick="calcular()" type="checkbox" value="34.40" name="num5">Cinco</font></td>
</tr>
</table>
<p align="center"><input type="submit" value="Enviar" name="B1"><input type="reset" value="Restablecer" name="B2"></p>
<input type="hidden" name="fvalida" value="0">
</form>
</body>
</html>
pego todo el codigo prque había algunas etiquetas que faltaban. Además no se que función cumple el campo "fvalida" pero supongo que solo era algo de transición.
Restaría un pequeño detalle: que cuando se van marcanto uno a uno los checkbox cuando se marque n todos, el check todos también se tilde, pero creo que no influye demaciado.
saludos