c語言且判斷
1. c語言編程判斷語句
樓上的回答完全文不對題,還號稱手打?
#include<iostream>
#include<windows.h>
#include<string>
#include<cstdlib>
usingnamespacestd;
intmain()
{
inta=5,b=4,c=6,d;
printf("%d ",d=a>b?a>c?a:c:b);//6
//要這樣看:d=(...),接下來看看括弧中的內容
//a>b?a>c?a:c:b也要逐步分解為a>b?(...):(...)
//因為a=5,b=4所以前者成立,我們來看看前者也就是a>c?a:c
//因為a=5,c=6所以後者成立,返回c
//好了最終結果出來了,也就是d=c
//然後printf的是d的值,所以最後輸出6
getchar();
return0;
}
2. C語言中 & 和 && 的區別
區別:
1.運算符性質不同。
&是一個位運算符。
&&是一個邏輯運算符。
2.作用不同。內
&是將兩個二進制的容數逐位相與,結果是相與之後的結果。
&&就是判斷兩個表達式的真假性,只有兩個表達式同時為真才為真,有一個為假則為假,具有短路性質。
3.用途限制。
&除了是一個位運算符,也是取地址符。
&&就是一個單純的邏輯運算符,沒有任何其他含義。
參考資料
&-網路
&&-網路
3. C語言邏輯判斷
C
x || y 這個表達式中, 當x為真的時候不需要判斷y,所以 x為真的幾率越大越效率。
x && y 這個表達式中, 當x為假的時候不需要判斷y,所以x為假的幾率越大越有效率(也就是說x為真的幾率越小越有效率)
所以 a||b 要比 b||a更好。 a||b為真的幾率是0.88 ,所以c在前比較有效率
4. c語言符號且與或
C語言中的邏輯運算符:&&(與運算)、||(或運算)、!(非運算)。
與運算符(&&)和或運算符(||)均為雙目運算符。具有左結合性。非運算符(!)為單目運算符,具有右結合性。邏輯運算符和其它運算符優先順序的關系可表示如下:
本來沒有錯誤,關系運算符都是按「非與或」順序來運算的。但是,不同的編譯器設計者可能對這個的認識不同,因此,如果不加括弧就會有歧義,因此,編譯器就會提醒應該加括弧(編譯中有警告:waring),但你不加,也不算錯,只是其結果就是按編譯器的運算順序來操作了。
&&是與,||是或;
&是位與,|是位或;
|就是按住shift在按回車上面一個按鈕;
兩下就是||;
這個不是錯誤,是警告warning,編譯器怕記不住操作符優先順序,而導致錯誤,因此提示||的優先順序高於!=。
(4)c語言且判斷擴展閱讀
C語言內置了豐富的運算符,大體可分為10類:算術運算符、關系運算符、邏輯運算符、位操作運算符、賦值運算符、條件運算符、逗號運算符、指針運算符、求位元組數運算符和特殊運算符。
根據運算符可操作的操作數的個數,可把運算符分為一元運算符、二元運算符和多元運算符(一般三元)。優先順序:當不同運算符優先順序不同時,先計算誰後計算結合性:當不同運算符優先順序相同時,先計算誰後計算誰。
5. C語言if判斷
只有來當flag的值等於1的時自候才執行 if大括弧裡面的語句。
書裡面那樣寫的話那就應該是書上錯了,盡信書不如無書呢。
如果有懷疑其實這你可以自己在編譯環境裡面自己嘗試一下。
你的補充:
if後面的小括弧是trut即是1的時候就執行 if大括弧裡面的語句。
如果是fault即是0的時候就執行else後面的。其實正如你說的:平時都是X>0之類判斷,如果x>0是truth即是1的時候就會執行 if大括弧裡面的語句。
道理其實都是一樣的。
多看一點書自己多理解一下。
6. C語言判斷語句
樓上的程序邏輯沒有問題,我同意.單個字元是可以用if判斷的,如果是多個的話就用strcmp函數就可以
7. C語言 邏輯判斷
並不是0遇到&&整個式子就為0,而是&&的表達式為0. &&外層的表達式還是要計算的。
另外注意這幾點就行了:
1. !和<的運算優先順序都大於&&,而且&&大於||
2. &&先算左邊,如果左邊是0,那右邊屬於&&的部分就就不執行了。
所以根據運算的優先順序給這個表達式加括弧:
(!(a<b)&&!c) || 1
8. C語言判斷
switch(choice){
case 1: price = 3.0; break;
case 2: price = 2.5; break;
case 3: price = 4.0; break;
case 4: price = 3.5; break;
default: price = 0.0; break;
}
應該是抄這樣,不用加判斷語句
9. C語言里且和或是什麼符號
分別是&&和||。
c語言中的&&有三種使用方式。
1 、取地址操作符。
單目運算,與其後回的變數或常量組答合,用於獲取該操作數的內存地址。
2 、位操作中的按位與操作
雙目運算符,&&的兩邊的表達式均參與操作。計算時按位計算。對於任意一位,如果兩個操作數該位上的值均為1,則結果該位上為1。否則結果該位上值為0。
3 、當兩個&&符號同時使用,即&&符號。
它的意思是代表邏輯運算中的邏輯與。雙目運算符,&&的兩邊的表達式均參與操作。
當&&兩邊均為真時,結果為真。否則結果為假。&&由於是邏輯運算,結果只有真(1)或假(0)兩種情況。
(9)c語言且判斷擴展閱讀
1、在使用&的時候進行相與運算,得到的結果一般也是這樣,但是也會有偶然情況,例如10和5相與,即1010&0101,則結果為0,這時候的結果就是不一樣的。2、&&和||卻是邏輯運算符,除了0之外,其他的非零整數都可以看做true,如果10和6相與,結果會是true。
10. c語言判斷!((a==0)&&(b==0))
不知道你要問什麼,但是我仍然可以告訴你這句話的意思!1,a,b肯定是在程序的某個地方定義的整形變數,他們代表的是任何整數,具體是多少,要看程序怎麼賦值了2,==符號就是 等於的意思,注意c語言中只有一個等號的情況下,不是等於的意思,而是賦值3,&&是並且的意思 ,也就是說要這個符號前後的表達式全都是真的情況下,才返回真4,( )和數學中的括弧是一個意思,起到運算的先後的作用5,! 是 非的意思,我們知道判斷的結果只有兩個 真 或者 假,所以你如果得到一個判斷的答案是假的話,再用這個符號弄一下,就變成了非假,也就是 真 的意思好了我們來看這個判斷式,為了把這個問題說清楚,我們把這個問題分為4個情況1。a等於0 b也等於0 那麼a==0 返回真 b==0 返回真 上述兩個結果 邏輯與 ,就是真並且真,所以還是返回真 最後,上述結果再邏輯非,變成非真,也就是假。 所以在這種情況下返回假2。a不等於0 b也不等於0 那麼a==0 返回假 b==0 返回假 上述兩個結果 邏輯與 ,就是假並且假,所以返回假 最後,上述結果再邏輯非,變成非假,也就是真。 所以在這種情況下返回真3。a等於0 b不等於0 那麼a==0 返回真 b==0 返回假 上述兩個結果 邏輯與 ,就是真並且假,所以返回假 最後,上述結果再邏輯非,變成非假,也就是真。 所以在這種情況下返回真4。與3 的情況一樣了!希望對你有幫助