c語言中的if1是什麼意思啊

2021-03-07 08:17:44 字數 6282 閱讀 5251

1樓:你不愛吃烤肉

if(表示式)表示式的值為1後面的程式執行,若為0則不執行。

比如if(1>2)其中1>2是

個邏輯判斷,1<2當然是假,所以就是false(false為0,true為1),但cpu不認false只認0和1,所以1《2的邏輯返回值就是0,所以if(0)等價於if(1>2),其他的同理。

還有一種就是if(5),c語言預設if(判別的返回值)是0就不執行,不是0就是執行!所以if(5)等同於if(1)也就是說if(表示式結果為0(邏輯判斷只返回0和1,但若是某個數值則不為0則當做是1))。

所以f(0)等價於f(1<2)等價於f((1+4)<9),f(!1)等,不執行。

if(1)相當if(5),if(1<2);

int a=0;

if(1)執行;

a=3;結果a=3;

if(0)不執行跳過;

a=4;

else a=5;執行a=5;

擴充套件資料:

c語句常用語句:

一,表示式語句

表示式語句由表示式加上分號「;」組成。

其一般形式為:表示式;執行表示式語句就是計算表示式的值。

例如: x=y+z;a=520;賦值語句;

y+z;加法運算語句,但計算結果不能保留,無實際意義;

i++; 自增1語句,i值增1。

i++; 是先運算i後再加1。

++i; 是先把i值增1後運算。

二,函式呼叫語句

由函式名、實際引數加上分號「;」組成。

其一般形式為: 函式名(實際參數列) ;

執行函式語句就是呼叫函式體並把實際引數賦予函式定義中的形式引數,然後執行被調函式體中的語句,求取函式值。

呼叫庫函式,輸出字串。

例如:printf(a,b,c); /*呼叫名為"printf"的函式*/

三,控制語句

控制語句用於控制程式的流程, 以實現程式的各種結構方式。

它們由特定的語句定義符組成。c語言有九種控制語句。 可分成以下三類:

(1). 條件判斷語句

if語句、switch語句;

(2) .迴圈執行語句

do while語句、while語句、for語句;

(3). 轉向語句

break語句、goto語句(此語句儘量少用,因為這不利結構化程式設計,濫用它會使程式流程無規律、可讀性差)、continue語句、return語句。

條件判斷

int x,y;

if(x>y)

printf("x,\n");

else

printf("y,\n");

四,複合語句

把多個語句用括號{}括起來組成的一個語句稱複合語句。 在程式中應把複合語句看成是單條語句,而不是多條語句,例如

是一條複合語句。複合語句內的各條語句都必須以分號「;」結尾;此外,在括號「}」外不能加分號。

五,空語句

只有分號「;」組成的語句稱為空語句。空語句是什麼也不執行的語句。在程式中空語句可用來作空迴圈體。

例如 while(getchar()!='\n'); 本語句的功能是,只要從鍵盤輸入的字元不是回車則重新輸入。這裡的迴圈體為空語句。

2樓:銀孟昝迎彤

首先你要明白什麼是表示式,還有變數。

a是一個變數。

a++,++a都是a加了1.

比如a原來是1,執行了a++或++a後,a變數的值就是2了至於a++和++a的區別主要是在表示式上的區別。

++a是先執行了a加1後,參與表示式的計算。

a++是a先參與表示式的計算,後執行自加1.

比如:int

a,b;

a=1;//如果你想把a的值1,付給b.那麼,但你又想使得a加1。你就可以這麼做

b=a++;//++在a之後,先把a的值付給b,然後再本身加1。這時候b=1,a=2了。

//如果你還不懂得話。b=a++;的意思

就是b=a;a=a+1;這兩句意思

//而b=++a

就是a=a+1;b=a;的意思

至於a++=a+a+1

好像寫錯了吧

是a+=a+a+1

優先順序等於

a=a+(a+a+1)//a+=b

是a=a+b

的簡化!=

不等於,是條件運算子,用來判斷真假的。

比如1!=2;

表示式的值就是假,也就是0;

c語言很多式子都是簡化的,這樣雖然可以節省**,卻比較讓人糊塗。

3樓:宜都書童

if()括號裡面跟的是條件句,如果條件成立,也就是if(1),則後面的程式執行。c語言預設if(判別的返回值)是0就不執行,不是0就是執行、所以if(5)等同於if(1)。

c# 中 if 語句的語法:

if(boolean_expression)

如果布林表示式為 true(1),則 if 語句內的**塊將被執行。如果布林表示式為 false(0),則 if 語句結束後的第一組**(閉括號後)將被執行。你的**解釋如下:

int a=0;

if(1)//執行

else a=5//執行a=5

擴充套件資料:

1、一般形式 if(表示式)表示式1 else 表示式2   :表示式成立(為真)則執行表示式1,否則執行表示式2.

適用範圍:真假,對錯,開關,對立面的條件

注意:如果if語句中只包括一條語句,可以省略{}但最好不要省略,如果有多條語句,一定要加{}

如果else不包含任何語句,則可以省略掉else

2、分支 if(表示式1){語句1}else if(表示式){語句2} else if(表示式3){語句3}。。。。。else(語句4)

表示式1成立立即執行語句1,否則判斷表示式2,表示式2成立則立即執行語句2,否則判斷表示式3,表示式3成立則立即執行語句3,表示式1,表示式2,表示式3都不成立,則執行語句4

分支if語句中條件是互斥的,不能有重複或互相包含的情況。如果有,必須重新理清程式思路。

if的條件是一段連續的範圍,要把所有的情況都涵蓋完

適用範圍:條件互斥,沒有相重合的條件,且條件都是一段連續的範圍的時候用

3、巢狀形式:

if (表示式) else

}elseelse

}使用範圍:適合逐層遞進,從大到小細分條件,可用巢狀。

4樓:匿名使用者

邏輯判斷

if(表示式)表示式的值為1後面的程式執行,若為0則不執行

比如if(1>2)其中1>2是個邏輯判斷,1<2當然是假,所以就是false(false為0,true為1),但cpu不認false只認0和1,

所以1《2的邏輯返回值就是0,所以if(0)等價於if(1>2),其他的同理

還有一種就是if(5),c語言預設if(判別的返回值)是0就不執行,不是0就是執行!所以if(5)等同於if(1)

也就是說if(表示式結果為0(邏輯判斷只返回0和1,但若是某個數值則不為0則當做是1))

所以f(0)等價於f(1<2)等價於f((1+4)<9),f(!1)等,不執行

if(1)相當if(5),if(1<2)

int a=0;

if(1)執行

else a=5;執行a=5

還一個是,*************這個自己動腦,按上面的方法試試

int a=0;

if(1)

a=3;

if(0)

a=4;

else a=5;

請一步步的說一下是什麼意思啊··想了半天也沒想明白··

5樓:匿名使用者

if(1)裡的1同時被理解為真假值,代表真,也就是如果為真,就進行if後邊的操作

c語言中if(!1)是什麼意思

6樓:一顆程式猿

c語言裡, 數字0被認為是假, 非0被認為是真

!1 就是將1按照布林值取反, 1是非0 (就是不等於0), 所以1本身是真, 真再取反就是假

所以 if(!1) 這裡是一個永假式, 也就是永遠不成立, 這個if語句永遠不會被執行

7樓:樂觀的魚德

c語言中if(1<=n<=10)執行過程是這樣的:先判斷 1<=n ,判斷結果為0(假)或1(真),然後在判斷(1=1 && n<=10 ) 。

8樓:戰希榮費賦

邏輯判斷

if(表示式)表示式的值為1後面的程式執行,若為0則不執行

比如if(1>2)其中1>2是個邏輯判斷,1<2當然是假,所以就是false(false為0,true為1),但cpu不認false只認0和1,

所以1《2的邏輯返回值就是0,所以if(0)等價於if(1>2),其他的同理

還有一種就是if(5),c語言預設if(判別的返回值)是0就不執行,不是0就是執行!所以if(5)等同於if(1)

也就是說if(表示式結果為0(邏輯判斷只返回0和1,但若是某個數值則不為0則當做是1))

所以f(0)等價於f(1<2)等價於f((1+4)<9),f(!1)等,不執行

if(1)相當if(5),if(1<2)

inta=0;

if(1)執行

else

a=5;執行a=5

還一個是,*************這個自己動腦,按上面的方法試試

inta=0;

if(1)

a=3;

if(0)

a=4;

else

a=5;

請一步步的說一下是什麼意思啊··想了半天也沒想明白··

9樓:樂正友安俟源

for有很多種用法

for(;;)相當於無限迴圈

while(turn)的用法,for(;-1;)的意思是判斷-1是否為真,如果真就執行for裡面的**,假就退出for(a;b;c)的意思是

一進for迴圈

首先執行a,然後判斷b是否為真,真的話執行for裡面的**,執行完後執行c再繼續判斷b是否為真......迴圈下去知道b為假退出

c語言裡面那個if(i==1)。。一個等號和兩個等號什麼區別。。都分別代表什麼意思啊。。

10樓:子小夜

if(i==1)的兩個等號的區別是:兩者的運算子型別不一樣,一個等號表示賦值, 兩個等號表示比較。

1、c語言中 2個等號為關係運算子,意思是:判斷兩邊的值是否相等。

== 關係運算子的表現形式為: 變數1 == 變數22、c語言中 1個等號為賦值運算子,意思是:賦值如:

x = 5,意思是將常量值5賦值給變數xif(i&1==1)這句話表示:如果是 奇數 則。。。

i&1 -- 按位與運算,取 2進位制整數 i 的最低位,如果最低位是1 則得1,如果最低位是0 則得0。 奇數 i 的最低位 是1,偶數i 的最低位 是0。

11樓:弋風

c語言中,一個等號和兩個

等號的區別是:兩者的運算子型別不一樣,一個等號表示賦值, 兩個等號表示比較。

兩者的具體意思如下:

1、c語言中 1個等號為賦值運算子,意思是:賦值

= 賦值運算子的表現形式為: 變數 = 表示式

例如:x = 5,意思是將常量值5賦值給變數x

2、c語言中 2個等號為關係運算子,意思是:判斷兩邊的值是否相等。

== 關係運算子的表現形式為: 變數1 == 變數2

例如:int x=3,y=5; x==y; 意思是比較變數x和變數y是否相等,結果是0,表示不相等。

3、c語言中 1個等號和2個等號的區別為:

= 表示把一個值賦值給變數, == 表示比較兩個變數是否相等

示例**為:

int a = 1, b = 3;

int c = a; // 給變數c賦值,結果為:c = 1

int d = a == b; // a和b比較是否相等,不相等的話返回0,結果為:d = 0

擴充套件資料:

c語言中比較兩個字串是否相等,通常情況下有2種實現方法:

(1)通過庫函式strcmp

形式為 int strcmp(char *a, char *b);

該函式會對a和b的每個字元,按照ascii碼值比較,如果二者完全相同返回0;如果a的ascii碼值先出現較大者,會返回1;否則返回-1。

(2)自定義函式

基本原理為按位元組比較,舉例如下:

int my_strcmp(char *s1, char *s2)

c語言中a121a是什麼意思,C語言中a 12 x1A 是什麼意思

a 12 x1a 表示將轉義字元 x1a賦值給陣列a的第13個元素。在c語言中,以反斜槓開頭,後跟一個字元或一個數字序列來表示一個字元量,稱為轉義字元。主要有以下三種形式 1 反斜槓後跟特定字元,如 n 2 反斜槓後跟1 3位8進位制數,如 101 3 反斜槓後跟1 2位16進位制數 要以x開頭 如...

c語言中num 1是什麼意思,c語言中num是什麼意思

num應該是一個變數的名字吧,如果是的話,就是當前num的值減去1的值。num本身的值不變。付費內容限時免費檢視 回答num沒有什麼特別的意思,是自己定義的變數,常作為number的縮寫。基本構成 資料型別 c的資料型別包括 整型 字元型 實型或浮點型 單精度和雙精度 列舉型別 陣列型別 結構體型別...

c語言中10e1是什麼意思,C語言中的浮點數1E1f 是什麼意思

e 表示指數的意思,10x10 1,10乘10的一次冪,例如e5表示10的5次冪 除去e,算出總位數為7 3 10,首先解釋下3,3就是那個正負號1位加上後面的數字位數2位得到3.你要求的10位還差7位,於是把1.23456789 除了100的小數 取前7位 包括小數點 得到1.23456.你的輸入...