为了账号安全,请及时绑定邮箱和手机立即绑定

大括号问题

#include <stdio.h>

int main()

{

    int m, n;

    for(m=2; m<=50; m++)

    {

for(n=2; n<m; n++)

        {

            if(    m%n==0    )       //什么条件下跳出当前循环

              break                //这里应该退出当前循环了

}

        if(m == n)   //n循环结束后,如果m=n的话就输出m

            printf("%d  ", m);

}

return 0;    

}

这里面,在if()完后,在输入break;的时候,为什么不用输入 { }? 

正在回答

2 回答

如果条件为真,执行break;仅此一条语句而已,不用加语句块符号{}

0 回复 有任何疑惑可以回复我~
#1

天外飞鸟 提问者

是这样吗?
2016-08-10 回复 有任何疑惑可以回复我~

如题。

m=2时,判断m是否小于等于50.成立继续运行。

那么问题来了。假设m=51.不符合怎么办。

答:有大括号时。因为m初始值不符合表达式二。大括号中一律不执行。n的for循环也在大括号中,所以n的for循环也不执行。

      无大括号时。因为m初始值不符合表达式二。程序继续运行,到达n的for循环n小于51,循环n的for循环。

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
C语言入门
  • 参与学习       926210    人
  • 解答问题       20797    个

C语言入门视频教程,带你进入编程世界的必修课-C语言

进入课程

大括号问题

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信