A.根据需要加热才能发生的反应不一定是吸热反应;
B.根据有些放热反应在加热条件下才能发生;
C.根据反应物和生成物所具有的总能量决定反应放热还是吸热;
D.根据有些吸热反应在常温下能发生来分析.
【解析】
A.因需要加热才能发生的反应不一定是吸热反应,如铝热反应需要加热才能发生,但它是放热反应,故A错误;
B.因铝热反应是放热反应,需要加热才能发生,故B错误;
C.因反应物和生成物所具有的总能量决定反应放热还是吸热,若反应物所具有的总能量大于生成物所具有的总能量,放热反应,反之,吸热反应,故C正确;
D.因有些吸热反应在常温下能发生,如铵盐与碱反应,故D错误;
故选C.