n<m和后面的n=m不是冲突了吗?

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

蓝色的蓝莓

2020-12-05 00:31

for(n=2; n<m; n++)这里明明讲明n<m那为何还会有后面的if(n=m)? 我知道n=m是说素数中的他自身,但是想不懂为何写了n <m后还会有n=m

写回答 关注

1回答

  • 云初848863
    2020-12-05 16:05:21

    (1)n<m是判断语句,判断n是不是小于m;;n=m表示把m的赋予给n。你那 if 后面应该是判断语句(n==m),判断n是不是等于于m,如果n等于m,则执行if下面{  }里的程序语句;否则不执行if后面{  }里的程序语句。

    (2)知识点:

    1,在c语言里面:“=”代表赋值,把等号后面的值赋予给等号前面,“==”代表判断是否相等。

    2,for循环中:for(表达式1;表达式2;表达式3)

    第一步:执行表达式1,对循环变量做初始化;第二步:判断表达式2,若其值为真(非0),则执行for循环体中执行代码块,然后向下执行;若其值为假(0),则结束循环;第三步:执行表达式3;第四步:执行for循环中执行代码块后执行第二步;第五步:循环结束,程序继续向下执行。

    3,程序是按一定顺序运行,如果出现多个赋值运算,以简单的顺序运算举例:

    m=12;

    n=m;  //第一次赋值

    ......

    n=20;  //第二次赋值

    ......

    在第一次赋值之后,第二次赋值之前,n的值为m赋予的值12;第二次赋值后,n的值变为20。



C语言入门

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

926206 学习 · 20797 问题

查看课程

相似问题