if語句中 == 與 = 號的區別
阿新 • • 發佈:2021-02-08
技術標籤:c語言
C語言學習筆記
#include<stdio.h>
int main()
{
int x=3,y=0,z=1;
printf("x=y+z//輸出:");
if(x=y+z)
{
printf("****\n");
printf("此時x=%d",x);
}
else
{
printf("####\n");
printf("此時x=%d",x);
}
}
輸出的結果:
解釋: if(=) 時,右邊賦值給左邊,就是把y+z的值1賦給了x,所以此時x的值不為0(當然也不等於3而是1),所以 if(1) ,則邏輯為真,因此函式打印出 **** .
#include<stdio.h>
int main()
{
int x=3,y=0,z=1;
printf("x==y+z//輸出:");
if(x==y+z)
{
printf("****\n");
printf("此時x=%d",x);
}
else
{
printf("####\n");
printf("此時x=%d",x);
}
}
輸出的結果:
解釋: if(==)時 ,x的值為3,y+z的值為1,因此左右並不相等,所以邏輯為假,就是 if(0) ,則列印 #### .
總結:
“=” 是賦值號,把右邊的值賦給左邊,如果此時左邊不等於0,則邏輯為真.
“==” 是判斷的,如果左邊等於右邊,則條件為真,非零;反之,則為0.