break不起作用啊,求解释

lynsir 2014-04-04 07:57:05
这是判断的输入的数字在不在数组中
break没起到作用,循环还是在进行 太奇怪了



#include <stdio.h>
#include <math.h>

main(void)
{
int i,k,n,tag=0;
int a[3][4]={{1,2,3},{4,5,6},{7,8,9}};

scanf("%d",&n);
for(i=0;i<3;i++)
{
for(k=0;k<4;k++)
{
if(a[i][k]==n)
{
tag=1;
printf("%d %d\n",i,k);
break;
}
}
}
printf("%d %d\n",i,k);
if(tag==0)
printf("-1\n");



return 0;
}
...全文
1037 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
Hucg 2014-04-04
  • 打赏
  • 举报
回复
引用 4 楼 u014045619 的回复:
好象有时候我用一个break就跳出了所有嵌套的循环啊

for(;;)//循环1
{
      for(;;)//循环2
      {}
      break;//此时的break是跳出了所有的循环
}
break是跳出break语句所在的循环,这个例子里,break跳出的就是循环1,但是循环1包含了循环2,那么这个break的效果就是跳出了所有的循环,但本质还是跳出一层循环
lynsir 2014-04-04
  • 打赏
  • 举报
回复
引用 1 楼 derekrose 的回复:
break可以跳出循环 但是不能跳出所有循环
引用 2 楼 huchenguang 的回复:
#include <stdio.h>
#include <math.h>
int main(void)
{
    int i,k,n,tag=0;
    int a[3][4]={{1,2,3},{4,5,6},{7,8,9}};
    scanf("%d",&n);
    for(i=0;i<3;i++)
    {
        for(k=0;k<4;k++)
        {
            if(a[i][k]==n)
            {
                tag=1;
                printf("%d %d\n",i,k);
                break;//跳出内层for循环
            }
        }
		if(tag == 1)//这里加上判断,如果tag == 1,跳出外层循环
			break;
    }
    if(tag==0)
        printf("-1\n");
    return 0;
}
break是跳出当前一层循环,你的程序里是2层for循环,第一个break是跳出内层for循环,但仍在外出循环中
引用 3 楼 jerry_dqh 的回复:
你有好几个循环
好象有时候我用一个break就跳出了所有嵌套的循环啊
碼上道 2014-04-04
  • 打赏
  • 举报
回复
你有好几个循环
Hucg 2014-04-04
  • 打赏
  • 举报
回复
#include <stdio.h>
#include <math.h>
int main(void)
{
    int i,k,n,tag=0;
    int a[3][4]={{1,2,3},{4,5,6},{7,8,9}};
    scanf("%d",&n);
    for(i=0;i<3;i++)
    {
        for(k=0;k<4;k++)
        {
            if(a[i][k]==n)
            {
                tag=1;
                printf("%d %d\n",i,k);
                break;//跳出内层for循环
            }
        }
		if(tag == 1)//这里加上判断,如果tag == 1,跳出外层循环
			break;
    }
    if(tag==0)
        printf("-1\n");
    return 0;
}
break是跳出当前一层循环,你的程序里是2层for循环,第一个break是跳出内层for循环,但仍在外出循环中
derekrose 2014-04-04
  • 打赏
  • 举报
回复
break可以跳出循环 但是不能跳出所有循环

70,037

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧