bash doesn't support floats, use awk or bc/dc
eg awk
totalmark=$(awk 'BEGIN{print $sum / $subjects}')
or bc
totalmark=$(echo "scale=2;$sum/$subjects"|bc)
if you have the luxury to use different shells other than bash, try zsh or ksh
$ zsh -c 'echo $((4/1.3))'
3.0769230769230766
$ ksh -c 'echo $((4/1.3))'
3.07692307692307692
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…