1樓:溫爾蓉悉霈
因為a++的值為0,a
的值為1,所以c=0;因為++在後面,所有a++表示式的值沒有變,只是改變了a的值!
2樓:匿名使用者
選d,c&&a為真,值為1,!(a+b)為假,值為0,「==」是恆等於,當然0是不等於1的,所以表示式假,其值為0
3樓:匿名使用者
答案是d
第乙個是 ascii 邏輯與 只有『a』 和『b』中最少有個為 0 時才為0
4樓:匿名使用者
直接編寫一段**,上機跑一下不就可以了嗎,如果是初學者還可以加深一下記憶;如果是入門很久了,還問這樣的問題,實在是不應該啊!!
5樓:匿名使用者
答案是d,因為a,b,c的值都是1,故選d!
c語言 若有語句int a=1,b=2,c=3;則以下值為0的表示式是
6樓:匿名使用者
a.'a'不為0,在邏輯表示式中非0為真,因此'a'&&'b'就是 真&&真=真,在c中定義真為1
b.a<=b成立值為真,1
c.(a>b)||(b到真,1
d.!(a+b)==c&&a即 !真&&真,即 假&&真 得到假,c語言定義假為0
c語言賦值表示式問題:若定義有語句:int a=3, b=2, c=1; 以下選項
7樓:滄海雄風
a錯了,不能將3賦值給表示式,b=4已經是個表示式了,既然是表示式就只有真假(即0和1),
而 (a=3*5)=4*3 中的a=3*5 是賦值
8樓:匿名使用者
我在vc++6.0中貼上你的**,編譯執行都通過#include
int main()
結果2 4 4
9樓:匿名使用者
賦值語句的物件只能是變數,而不是表示式 b=4已經是個表示式。若換成a=b=3,就對了。
對於b,最後的值:a=2,b=2,c=1
對於c,整個語句是個賦值語句,裡面又巢狀了個b=4的賦值語句,所以,最後的結果是a=5,b=4,c=1
對於d,解法同c,a=5,b=4,c=4.
所以a 是錯誤滴。
c語言,若有定義:int a=1,b=2,c=3;則語句++a||++b&&++c;執行後b的值為
10樓:
優先順序 ++ > && > ||
可以看成++a || (++b && ++c),因為++a已經==2 > 0 因此,後面不再計算。
即a = 2, b= 2 ,c =3
逗號表示式c=(表示式1,表示式2)中,如果表示式1值為0,c的值是0還是表示式2的值?
11樓:育知同創教育
c語言提供一種特殊的運算子,逗號運算子,優先級別最低,它將兩式聯接起來,如:(3+5,6+8)稱為逗號表示式,其求解過程先表示式1,後表示式2,整個表示式值是表示式2的值,所以c=表示式2的值
c語言中, 已知int a=1,b=2 ,c=3 以下語句執行後a,b,c的值是??
12樓:思念不濕
應該是看成
if (a>b)
a=b;
b=c;
if只管到c=a ; 因為a=1,b=2,不滿足if,所以執行後面的,a=b=2,b=c=3,c還是3選b
13樓:uspta鄭州站
條件a>b不成立
所以c=a執行,所以
a=2,b=3,c=3
14樓:當上帝愛上天使
a,原文中a不大於b,則不滿足if條件~則不執行下列語句~所以abc的值不變
15樓:匿名使用者
沒學過都會 不是打擊你哦 都告訴你整形常量 a b c的值了 下面的式子 如果 a>b就執行 c=a;a=b;b=c c=a是把a的值給c 下面是乙個意思 把b的值給a c的值給b 你自己看選什麼吧 a>b不滿足的時候就不執行語句 結果a=1 b=2 c=3
c語言 若有定義語句 int a=3,b=2,c=1; 一下選項中錯誤的賦值表示式是 a a=
16樓:匿名使用者
c語言中,賦值號左邊只能是變數,而不能是表示式,答案a中,最右邊的賦值號它左邊是乙個表示式(因為b=4使用了括號)而不是變數,所以是錯的
17樓:匿名使用者
a 已經驗證過了,需要左賦值!
18樓:一劍傾心頂你
選a這個題要考慮運算子的優先順序,
+-*/優先於=
而且=運算子從右往左算
c語言環境中,設a=1,b=2,c=3,d=4,則表示式:a>b?a:c>d?a:d的結果為( )
19樓:lovefree隨風
表示式:a>b?a:c>d?a:d的結果為4。
解析:1、由於c語言的相同優先順序運算子運算規則為從左至右依次運算,而條件運算子具有右結合性,所以表示式:a>b?
a:c>d?a:
d優先運算c>d?a:d,得出的結果為4;
2、再運輸a>b?a:4,得出的結果為4。
所以最終得出的結果為4。
擴充套件資料表示式為:表示式1?表示式2:表示式3
先求解表示式1,
若其值為真(非0)則將表示式2的值作為整個表示式的取值,否則(表示式1的值為0)將表示式3的值作為整個表示式的取值。
例如:1、max=(a>b)?a:b,就是將a和b二者中較大的乙個賦給max。
2、min=(a條件運算子具有右結合性
當乙個表示式中出現多個條件運算子時,應該將位於最右邊的問號與離它最近的冒號配對,並按這一原則正確區分各條件運算子的運算物件。例如:
20樓:匿名使用者
結果是4,一會寫出過程
「?:" 這是乙個三目運算子,以 「c>d?a:
d」這個**為例,程式會首先判斷「c>d」是否為真,若為真則執行冒號前的語句,即其結果為」a「的值;若為假,則執行冒號後的語句,即其值為"d"的值。
一般遇到這樣的題要拆分著做,首先判斷最左邊的「a>b」,這個結果為假,根據條件判斷運算子的性質,所以接下來執行第乙個冒號後的語句「c>d?a:d」,接著判斷「c>d」,結果為假,所以最終取值為第二個冒號後的值,即為d的值,也就是4。
21樓:匿名使用者
答案為4,「a?b:c」是從右向左執行的,也就是說a為真的話,這個式子就可以看做b,否則可以看做c;c大於d麼,不是,則變成了a>b?
a:d,a大於b麼,不是,則為d,d=4.
22樓:匿名使用者
答案是4.三目運算子就可求得
c語言 若有定義:int a=1,b=2, c=3;則語句++a丨丨++b&&++c, 執行後b的值為多少
23樓:塗智華
2,或運算只需乙個滿足就行++a=2不等於0個,故或運算結果為一,++b運算沒得到執行
24樓:陽雪松
++a 算得結果是邏輯真,跟後面的部分進行邏輯或運算,不管後面的部分算得結果是真還是假,最終結果都是趙,所以後面的部分就不算了。所以運算後 b 的值還是 2。同理,c 的值還是 3。
C語言若有定義 int a 1,b 2,c 3則語句 a丨丨 bc,執行後b的值為多少
2,或運算只需乙個滿足就行 a 2不等於0個,故或運算結果為一,b運算沒得到執行 a 算得結果是邏輯真,跟後面的部分進行邏輯或運算,不管後面的部分算得結果是真還是假,最終結果都是趙,所以後面的部分就不算了。所以運算後 b 的值還是 2。同理,c 的值還是 3。c語言,若有定義 int a 1,b 2...
若有定義語句 int a 3,b 2,c 1,以下選項中錯誤的賦值表示式是
a錯了,不能將3賦值給表示式,b 4已經是個表示式了,既然是表示式就只有真假 即0和1 基礎知識要看仔細點 a錯了,原式 a 4 3,明顯錯誤 a肯定是錯的 變數a是整型,b 4 3這個表示式是bool,所以出錯。a放到程式裡一試就式出來了,只有a報錯,其他的都能通過 若有定義語句 int a 3,...
若有如下定義 int a 1,b 2,c 3執行語句b a4bac之後,c的值是
3。判斷是從左向右,前面的可以判斷的話後面的不執行。表示式a 4值為1,但表示式b 執行後 c 的值是 4 啊 在這個語句裡用的 c 先返回 c 的初始值3 c的值是4,c c c 1 開始c 3,所以c的值是4!設有 int a 1,b 2,c 3,d 4,m 2,n 2 執行 m a b n c...