#include<stdio.h>
int main()
{
int a,b;
int flag;
for(a=0;a<10;a++)
{
for(b=0;b<10;b++)
{
if(......)
flag=1;
else
flag=0;
}
if(flag==1)
break;
else
continue;
}
printf(......);
return 0;
}注意,像这种两种循环嵌套,利用flag+break标记想要的结果并跳出循环输出结果时,
自以为天衣无缝,实则傻叉一个。里面的循环跑完了才能跳出来执行外面的if语句啊啊啊啊啊啊!!!
然而跑出内循环的时候,flag已经被修改成0了!
本文通过一个具体的C语言程序实例,展示了在使用双层循环配合标志位(flag)进行条件判断时容易陷入的一个误区。文章揭示了在内部循环结束后标志位的状态变化导致外部循环的判断逻辑出现问题的情况。
734

被折叠的 条评论
为什么被折叠?



