首先写个输出1-10的代码
int main()
{
int i = 1;
while (i <= 10)
{
printf("%d", i);
i++;
}
return 0;
}
这个就是while的使用。意思就是当while后面为真,执行while内操作然后再回去判断while条件是否执行while。
在while循环中,break用于永久的终止循环,比如如下执行:
那么break换成continue会如何:
int main()
{
int i = 1;
while (i <= 10)
{
if (i == 5)
continue;
printf("%d", i);
i++;
}
return 0;
}
答案是会输出1234但是代码未结束陷入死循环。这是因为在while循环中,continue的作用是跳过本次循环continue后面的代码直接去下次循环的判断部分,看是否执行,我们在printf前加入continue则会跳过后面的打印以及i++部分导致程序死循环。
应用场景:分析下面这个程序是什么意思:
int main()
{
int ch = 0;
while ((ch = getchar()) != EOF)
{
putchar(ch);
}
return 0;
}
答案:通过getchar和putchar实现输入什么就得到什么的代码。
运行后得到如下图所示,通过ctrl+z来输入一个EOF来终止while: