c语言游戏掷骰子游戏

卷[7];

roll[7]= { 0 };

在第一句话中,roll数组没有初始化。掷骰数组是一组不确定的值,它取决于系统分配给掷骰的内存。后面的代码都是在这组不确定值上累加的,所以结果还是一组不确定值。

第二句话是将roll中的所有元素初始化为0。后续代码基于0计算,因此结果是可预测的。

所以写代码的时候最好初始化变量,比如int I = 0;如果可以,不要直接int I;算了,养成好的习惯可以避免很多低级的bug,尤其是写上万行代码的时候。如果这种写法造成了一些奇怪的问题,会浪费你N多的时间去查错。