c語言中和的區別,為什麼 3的執行結果是3 4的結果是 7 15的結果是 15的運算有什規律

2021-05-23 12:26:08 字數 4992 閱讀 8661

1樓:匿名使用者

||| 是邏輯運算,例如 if (x > 3 || y > 3)| 是位運算,算這個要先把數字轉換成2進位制3 | 3

0011

0011

--------

0011 (3)

計算方式是,相應的位上,只要有一個數是1,則結果為13 | 4

0011

0100

--------

0111 (7)

3 | 15

0011

1111

--------

1111 (15)

2樓:再註冊使用者

|表示按位或,把要按位或運算的兩個數字按照每一位來進行或運算,運算的結果為一個數值。

||表示邏輯或,把兩個要運算的資料按「是」與「否」的邏輯方式來運算,結果也即為一個邏輯值(true 或者 false)。

c語言:7&3的執行結果為什麼是3? 謝謝。。

3樓:

&是二進位制與運算,7&3就是7的二進位制和3的二進位制按位進行與運算:

111& 011

————

011結果是011,也就是3

c語言中。3<=4的結果為什麼是真??

4樓:儲r3q災

是對的,3<=4就是3<4或3=4,結果為真

5樓:匿名使用者

3<=4是一個邏輯比較運算,結果只有1(對)和0(錯)兩種。這裡3<=4是對的

6樓:落塵埃的夏日

因為3是小於或等於4

c語言中3&&4是怎麼運算的,結果是多少啊?

7樓:匿名使用者

結果是1

&&是邏輯操作符號【與】,當兩邊都為非0時,整個結果為1。

邏輯與操作符(&&)

真值表:

邏輯與操作符可以應用於任何型別的運算元,而不僅僅是布林值。在有一個運算元不是布林值的情況下,邏輯與操作就不一定返回布林值;此時,他遵循下列規則:

1.如果第一個運算元是物件,則返回第二個運算元;

2.如果第二個運算元是物件,則只有在第一個運算元的求值結果是true的情況下才會返回該物件;

3.如果兩個運算元都是物件,則返回第二個運算元;

4.如果一個運算元是null,則返回null;

5.如果有一個運算元是nan,則返回nan;

6.如果有一個運算元是undefined,則返回undefined。

因為3和4都是非0,為true,所以

8樓:匿名使用者

答案是1

這個是與預算

&&符號是與操作 3&&4 將會比較3和4 ,3和4均為非0值 所以等價於 1與1 所以答案是1

1<2 為真 值為1 2<3為真 值為1

9樓:風舞迷離

那1<2&&2<3&&4的值為1,怎麼理解?

1小於2,2小於3,3小於4 的條件同時滿足, 值才為1

10樓:匿名使用者

3和4都是非零的,可以認為是邏輯1(真),1&&1結果是1(真)

11樓:匿名使用者

答案是:1

&&是邏輯與運算子

左邊和右邊都是大於0的數,在系統認為是true的,&&運算子,當左邊和右邊都是true的時候,才返回true

12樓:大專家團

? : 是一個三目運算子,也是唯一的一個三目運算子。?

前面表邏輯條件,:前面也就是?後面表示條件成立時的值,:

後面表條件不成立時的值。例如,當a>b時,x=1否則x=0,可以寫成x=a>b?1:0。

c語言問題,程式如下,執行結果為什麼是3,5,3,我看是3,5,5

13樓:汐日南莘

int a=3,b=5,c=7;

if(a>b)a=b;//這個if語句不成立 所以b不會賦值給ac=a;//這是把a賦值給c  這時a=3,b=5,c=3if(c!=a)c=b;//因為c等於a 所以這句不執行printf("%d,%d,%d\n",a,b,c);//最後結果 3 5  3

14樓:貌似風輕

#include

main()

等價於#include

main()

c=a;

if(c!=a)

printf("%d,%d,%d\n",a,b,c);

}兩個if都不成立,只執行了c=a;

所以結果是3,5,3

if、for、while等語句如果沒加大括號怎預設只有下一個語句在大括號內。

if()

a=b;

b=c;

等價於if()

{a=b;

}b=c;

15樓:蜻蜓點水

第一次的if語句只有一條語句

a=b後面有個分號,c=a不是if的語句,所以是一定要執行的語句執行完之後c和a是相等的

那麼第二個if就不會執行

意思是,如果a和c不相等,就執行

16樓:

if(a>b)//3<5不執行if下的語句a=b;

c=a;//這條執行c=a

if(c!=a)//上條執行完c==a

c=b;

printf(........);//故353

17樓:水裡風

a=b;是第一個if的,而後面的c=a;不屬於第一個if,,所以哪怕第一個if不執行這條語句也會執行

c語言中3%4等於3還是4啊

18樓:匿名使用者

a % b是求模(求餘運算)相當於求a/b所得餘數。

3 % 4商是0,餘數是3,所以得3.

19樓:匿名使用者

3對4求餘數當然是3

20樓:魚來魚網的拳頭

3%4是取餘運算,3%4=0........3,餘數為3,所以結果是3,而3/4結果為0

21樓:匿名使用者

%操作符是取餘操作,3除以4餘數為3,結果是3

22樓:達哥

%是取得餘數的意思

4%4結果是0

4%5結果是1

4%6結果是2

4%8結果是3

23樓:

---------------》3

【c語言】為什麼這個程式輸出結果為3?

24樓:匿名使用者

樓主你好 其實這裡是一個字元的問題

我們把這個字串的每一個字元的ascii碼列印出來看看就知道了#include

int main()

//printf("%d\n",strlen("s\n\016\0end"));

return 0;

}執行可以得到如下的結果:

[root@localhost ~]# gcc -o test123 cc.c

[root@localhost ~]# ./test12311510

14課件第三個字元也就是 s[2]的ascii碼為14即為8進位制的016 所以第三個字元是 \016 而不是\0

所以strlen(s)==3。

got it?

25樓:匿名使用者

\016 是一個字元, 不是 "\0" 加 "16"

c語言中7/(-3)和-7/3和-7%3和7%(-3)多少

26樓:匿名使用者

除法按常規的計算。 模運算子號取決於第一個運算元。

27樓:王大本事

-2 -2 -1 1

[c語言]如圖程式,為什麼執行結果有4個數? 為什麼執行結果為:7,6,3,2

28樓:匿名使用者

x=8時能被4整除,所以if語句的條件為假不執行,直接執行下面的printf語句,輸出--x的值為7,for語句中x--,x值為6;

x=6時不能被4整除,所以if語句的條件為真執行其括號內的printf語句,輸出x--的值為6,之後x的值為5,continue返回for語句x--,x值為4;

x=4能被4整除,所以if語句的條件為假不執行,直接執行下面的printf語句,輸出--x的值為3,for語句中x--,x值為2;

x=2時不能被4整除,所以if語句的條件為真執行其括號內的printf語句,輸出x--的值為2,之後x的值為1,continue返回for語句x--,x值為0,結束迴圈

29樓:匿名使用者

x = 8

第一次迴圈:8%4=0,所以不進入,直接跳到printf ("%d,", --x);--x為7,所以輸出7

x = 6

第二次迴圈:6%4=2,所以進入,printf ("%d,", x--),x--為6,所以輸出6

。continue,道下一次迴圈

x = 4

第三次迴圈:4%4=0,與第一次相同,輸出3

x = 2

第四次迴圈:2%4=0,與第二次相同,輸出2

結束後x=1

在這裡注意一點,你的問題可能出在這兒:continue;表示結束本次迴圈,自動跳到下一次迴圈。它並不會跳過每次迴圈結束後自動執行的for 的最後一個引數(x--)

夠詳細嗎?望採納

c語言中與有什麼區別C語言中和的區別

語言中 與 有三個區別 作用不同 輸出的值不同 使用方法不同。如下參考 一 作用不同 表示按位與運算,另外也是取地址符 例如 0010 1101,結果為0000 表示邏輯與運算 例如 if a 0 b 0 意思就是ifa為0並且b為0的時候,進行下一步操作。二 輸出的值不同 b輸出的值為2,說明b沒...

c語言中和有什麼區別,c語言中的break與Continue有什麼區別

是賦值操作 是比較是否相等操作 if i 1 是永遠成立的 if i 1 只有當1值是1才成立 i i是把數字1的值賦給i i 1是i的值等於1 前者為賦值,後者為判斷 是複製語句,是判斷前後是否相等 是賦值操作,是比較是否相等操作。你是初學吧!是賦值,例如inta 3 intb a 那麼b 3.關...

c語言中和有什麼區別,C語言中的 和 有什麼區別?

和 在c語言裡是對 的註釋說明。1 是對塊的註釋說明。我是一塊的註釋說明 2 是對一行 的註釋說明。我是一行 我被註釋了 擴充套件資料 c語言主要特點 c語言是一種結構化語言,它有著清晰的層次,可按照模組的方式對程式進行編寫,十分有利於程式的除錯,且c語言的處理和表現能力都非常的強大,依靠非常全面的...