1613551 发表于 2022-8-12 10:54:41

if语句后面的语句怎么判断是不是在if语句里面?

怎么会有人代码这样写的?要怎么判断第一个代码的第十行,if语句后面的语句是不是在if语句里面?

#include <stdio.h>
int main(void)
{
int i, j, x = 0;
for (i = 0; i < 2; i++)
{
    x++;
    for (j = 0; j <= 3; j++)
    {
      if (j % 2)continue;x++;
    }
    x++;
}
printf("x=%d\n", x);
return 0;
}


我以为上面的那段代码应该是下面这样的格式,结果不是
#include <stdio.h>
int main(void)
{
int i, j, x = 0;
for (i = 0; i < 2; i++)
{
    x++;
    for (j = 0; j <= 3; j++)
    {
      if (j % 2)
      {
      continue;
      x++;
      }
    }
    x++;
}
printf("x=%d\n", x);
return 0;
}

所以如果像第一个代码那样写的话,if语句只会包含它后面的那条语句吗?

liuzhengyuan 发表于 2022-8-12 11:00:53

第一个代码 相当于:
#include <stdio.h>
int main(void)
{
int i, j, x = 0;
for (i = 0; i < 2; i++)
{
    x++;
    for (j = 0; j <= 3; j++)
    {
      if (j % 2) {
         continue;
      }
      x++;
    }
    x++;
}
printf("x=%d\n", x);
return 0;
}

不要这样写,if 不加大括号的话只会包含其后的第一个语句
页: [1]
查看完整版本: if语句后面的语句怎么判断是不是在if语句里面?