c语言中if括号中用=号的作用是什么?

Python017

c语言中if括号中用=号的作用是什么?,第1张

赋值,不是比较。

if(x=1) printf("abc") //表示将1赋给x,x=1这个表达式的结果为真,这个语句中的printf永远都要执行。

if(x==1) printf("abc") //表示判断x的值是否等于1,若等于1,则执行printf,否则不执行。

您好,很高兴回答您的问题。

在c语言中,=表示的是赋值语句,表示把右边的值赋值给左边的变量,所以您if语句中是每次把5赋值给变量i,那么这是个永远成立的条件,所以程序会陷入死循环。

只需要改成i==5即可。c语言中两个等号才表示判断左右两边的值是不是相等,若是就继续运行,若不是那么条件不成立,就结束循环。