学不死就死里xue 发表于 2022-10-13 17:10:06

goto疑惑

#include <stdio.h>

int main()
{
      int i = 0;

      while (i++)
      {
                if (i > 10)
                {
                        goto Label;
                }
                putchar('B');
      }

Label:putchar('\n');

      return 0;
}
比如这里的I是小于10 不是应该会执行B吗 为什么我打印不出来

wp231957 发表于 2022-10-13 17:20:14

你应该考虑它能否进入循环

学不死就死里xue 发表于 2022-10-13 17:30:29

wp231957 发表于 2022-10-13 17:20
你应该考虑它能否进入循环

为啥不可以呀{:5_104:}

学不死就死里xue 发表于 2022-10-13 17:35:14

这里我疑惑的是while语句所输出的值如果不满足if语句的条件,会执行if语句下面的putchar吗
就这一个疑惑

wp231957 发表于 2022-10-13 18:02:42

学不死就死里xue 发表于 2022-10-13 17:35
这里我疑惑的是while语句所输出的值如果不满足if语句的条件,会执行if语句下面的putchar吗
就这一个疑惑

所有程序都是顺序执行
你的焦点是能否进入循环

jhq999 发表于 2022-10-13 18:10:25

wp231957 发表于 2022-10-13 18:02
所有程序都是顺序执行
你的焦点是能否进入循环

估计他现在卡住了没发现i++,是先运算后加

wp231957 发表于 2022-10-13 18:27:05

jhq999 发表于 2022-10-13 18:10
估计他现在卡住了没发现i++,是先运算后加

我喜欢i+=1

jhq999 发表于 2022-10-13 18:32:44

wp231957 发表于 2022-10-13 18:27
我喜欢i+=1

{:5_110:}

qsva 发表于 2022-10-13 19:12:56

你的i等于0啊!还有i++应该写到循环外面,while(是判断语句)不能写I++的

我是扬帆起航 发表于 2022-10-14 10:16:30

对于while来说,他的判断条件(i++第一次不会执行),while(o)不会执行循环
页: [1]
查看完整版本: goto疑惑