我对C很陌生,我正在搞砸我们在课堂上做的一些事情。但我遇到了一个问题:
srand(time(NULL));
for (counter = 0; counter < 7; counter = counter + 1);
{
stats[counter] = abs(rand() % max);
}
然而,当我去打印这些元素时,只有最后一个元素才有意义,其他一切都是-858993460
printf("Health: %d\n", stats[0]);
printf("Armor: %d\n", stats[1]);
printf("Damage: %d\n", stats[2]);
printf("Critical Strike Shance: %d\n", stats[3]);
printf("Critical Strike Damage: %d\n", stats[4]);
printf("Dexterity: %d\n", stats[5]);
printf("Strength: %d\n", stats[6]);
printf("Luck: %d\n", stats[7]);
有人可以帮忙吗?
谢谢!
答案 0 :(得分:9)
在for循环行的末尾有一个分号。
for (counter = 0; counter < 7; counter = counter + 1);
^^^^
使得后面的块只执行一次。因为它不在for循环中。