if 是岔路口
if (x % 2 == 0):x = 8 时余 0 条件成立走 if,x = 7 时余 1 走 else。同一个 if,值不同走向就不同。口诀:取余 % 等于 0,就是「整除」——判倍数、判奇偶全用它,比如 x % 3 == 0 判能否被 3 整除。
for 扫数组数偶数
课件用 int nums[5] = {3, 8, 2, 7, 4} 演示:for (int i = 0; i < n; i++) 三段分别是「i 从 0 开始」「小于长度就继续」「每轮加 1」,循环体里 if (nums[i] % 2 == 0) cnt++;,扫完偶数有 8、2、4 三个,cnt = 3。长度用 C 的惯用法 sizeof(nums) / sizeof(nums[0]) 算出 5。while 是等价写法,但 i++ 必须自己手写在循环体里,新手用 for 更不容易忘。
continue 与 break
continue:这一圈剩下的代码不做了,直接进下一轮;break 更狠:整个循环立刻结束,后面的元素一个不扫。课件那趟里 3 被 continue 跳过、遇到 8 就 break,后面的 printf 一次都没执行到。一句话:continue 跳一圈,break 直接散场——这是机试里提前剪枝、找到答案就停的常用招。复杂度只看循环套几层:一层 O(n),两层 O(n²),n 上万的嵌套循环要警惕超时。