为什么添if(m/n==0)结果就不一样了

来源:4-14 结束语句之break语句

谦虚的忍

2019-06-16 10:47

#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(m/n==0)结果就不一样


写回答 关注

3回答

  • 慕的地21332321
    2019-07-21 17:27:39

    "/"为当被除数与除数都为整数时,商舍去小数点以后;如被除数与除数至少有一个为小数时,商直接运算。

    “%”为“取余”,左边是被除数,右边是除数,输出余数。

    明白请采纳^-^

  • 精慕门4191245
    2019-06-16 15:42:23

    因为/是除法运算符,%是求余运算符,m和n最开始的赋值都是2,两个参数的表达式3分别是m++和n++,所以无论怎么除都不为0

  • 慕侠245340
    2019-06-16 15:31:15
    /和%不一样


C语言入门

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

926210 学习 · 20797 问题

查看课程

相似问题