1樓:匿名使用者
int a=1,b=2,c=3,d=4;
if((a=2)&&(b=1)) c=2;
a=2表示賦值2給a,同時檢查結果2是不是真, 當然是,所以又檢查b=1,
b=1 同上,結果也是真,所以執行c=2;
if((c==3)||(d==-1)) a=5;
c=2!=3 ,d=4!=-1,所以不執行a=5;
printf("%d,%d,%d,%d\n",a,b,c,d);
正確結果為:2 1 2 4
如果你的答案是5 1 2 -1,則說明你if((c==3)||(d==-1)) a=5;這句寫錯了,
應該是if((c==3)||(d=-1)) a=5; 是d=-1不是d==-1
c=2!=3為假,因為是||或關係,所以會再判斷d=-1,-1非0為真,會執行a=5
這樣結果為
a=5 b=1 c=2 d=-1
2樓:匿名使用者
a=b++
自增字尾,所以表示式b++的值為b的原值2,即a=2,b值之後自增1所以結果a值為2,b值為3
b=c++
原理同上,b值最終為3,c值為4
3樓:聽不清啊
c語言:假定a=1,b=2,c=3,d=4則a=b++;後
a的值為2,b的值為3
b=c++;後,
b的值為3,c的值為4。
c語言中設a=1,b=2,c=3,d=4;執行printf(%d%d%d%d\n",a==b==c,c=a==b,c==(a=b),b=c);的結果是什麼 100
4樓:匿名使用者
c語言提供一種特殊的運算子——逗號運算子。用它將兩個表示式連線起來專。如:
3+5,6+8稱為逗號表示式,又屬稱為「順序求值運算子」。逗號表示式的一般形式為表示式1,表示式2逗號表示式的求解過程是:先求解表示式1,再求解表示式2。
整個逗號表示式的值是表示式2的值。例如,上面的逗號表示式「3+5,6+8」的值為14。又如,逗號表示式a=3*5,a*4對此表示式的求解,讀者可能會有兩種不同的理解:
一種認為「3*5,a*4」是一個逗號表示式,先求出此逗號表示式的值,如果a的原值為3,則逗號表示式的值為12,將12賦給a,因此最後a的值為12。另一種認為:「a=3*5」是一個賦值表示式」,「a*4」是另一個表示式,二者用逗號相連,構成一個逗號表示式。
這兩者哪一個對呢?賦值運算子的優先順序別高於逗號運算子,因此應先求解a=3*5(也就是把「a=3*5」作為一個表示式)。經計算和賦值後得到a的值為15,然後求解a*4,得60。
整個逗號表示式的值為60。
c語言環境中,設a=1,b=2,c=3,d=4,則表示式:a>b?a:c>d?a:d的結果為( )
5樓:匿名使用者
結果是4,一會寫出過程
「?:" 這是一個三目運算子,以 「c>d?a:
d」這個**為例,程式會首先判斷「c>d」是否為真,若為真則執行冒號前的語句,即其結果為」a「的值;若為假,則執行冒號後的語句,即其值為"d"的值。
一般遇到這樣的題要拆分著做,首先判斷最左邊的「a>b」,這個結果為假,根據條件判斷運算子的性質,所以接下來執行第一個冒號後的語句「c>d?a:d」,接著判斷「c>d」,結果為假,所以最終取值為第二個冒號後的值,即為d的值,也就是4。
6樓:匿名使用者
答案為4,「a?b:c」是從右向左執行的,也就是說a為真的話,這個式子就可以看做b,否則可以看做c;c大於d麼,不是,則變成了a>b?
a:d,a大於b麼,不是,則為d,d=4.
7樓:匿名使用者
答案是4.三目運算子就可求得
c語言 設a=1, b=2, c=3,d=4,則表示式a
8樓:甲說雜言
這個是c語言中的條件運算子(?:)它是對第一個表示式作真/假檢測,然後根據結果返回另外兩個表示式中的一個。
《表示式1>?《表示式2>:《表示式3>
在運算中,首先對第一個表示式進行檢驗,如果為真,則返回表示式2的值;如果為假,則返回表示式3的值。
你這個表示式中,a
9樓:匿名使用者
a=1, b=2, c=3,d=4,求:a果成立,則值為:a,如果不成立,則值為c現在a=1,b=2,a,所以結果就是a。
(2)因為a的值是1,所以結果就是:1
(3)如果不成立才計算c 10樓:windy一點硃砂 是先運算最右邊的。 ?:是條件表示式結合方向是從右向左,這是個三目運算子 即a我才是正解,專門扒拉出書來看的,答案是一樣的但是優先順序不一樣,我參考的書是c語言程式設計第三版 何欽銘,顏暉主編(p132p139)!! 11樓:滄海雄風 (a所以很明顯a就是返回 1 完了 12樓:匿名使用者 #include int main() else {if(c 13樓:匿名使用者 從左往右看,因為a
所以返回1. c語言a=1,b=2,c=3,d=4,則++a*b-c--的值為? 14樓:平 這個題主要來考察的是c語言中 的運算子源優先順序的問題。以及++a和a++的值。在c語言中++a和a++都是a自加一。 但是他們兩個本身的值是不一樣的。在這個題中,++a是2,但是a++是1。以此類推,這個題最後的結果是1 如果a=1,b=2,c=3,d=4,則表示式a 15樓: 現判別c:d, ∵c=3,d=4 ∴c?c:d 的值為3 再判別a
∵a=1,b=2 ∴a
∴a
結果a
c語言題 int a=1,b=2,c=3,d=4,e=5; k=a>b?c:d>e?d:e;求k 16樓:匿名使用者 #include int main(void) 執行結果:5 #include int main(void) 執行結果:3 從第二個小程式的執行結果可以看出,確實是 先判斷d>e,再判斷a果取c的值。 17樓:我二次元穿越 k=5k=a>b?c:d>e?d:e; 是說,a>b是否為真,真的話就執行,把c的值賦給k如果a然後跳到下面看d>e是否為真,如果真的話就執行,把d的值賦給k如果d>e為假的話,剩下的就執行e了,把e的值賦k,所以k=5 1 a b c 2 a 2 b 2 c 2 2ab 2ac 2bc 36 ab ac bc 11 a b c 3 a 3 b 3 c 3 6abc 3ab 2 3a 2b 3a 2c 3ac 2 3bc 2 3b 2c 14 6abc 18 a 2 b 2 c 2 3 a 3 b 3 c 3 14 ... 準駕車型不一樣,b1可以開中型客車和c1 m,b2可以開大型貨車和c1 m,c1可以開小型汽車和c2 c3,c2可以開小型自動檔汽車。附圖說明 這是駕駛照的級別,級別能夠分別,你有能力駕駛某種級別的車輛 駕駛證a1a2,b1b2,c1c2到底有什麼區別 駕駛證a1a2,b1b2,c1c2的準駕車型不... heart琅小 c1,c2,b1,b2都是駕駛證代號的一種。b1 中型載客汽車 含核載10人以上 19人以下,且車長小於6米的載客汽車 b2 重型 中型載貨汽車 大 重 中型專項作業車 如混凝土攪拌車 消防車等 c1 小型 微型載客汽車 小於等於9座以下,且車長小於6米的小型載客汽車 以及輕型 微型...已知a b c 6,a2 b2 c2 14,a3 b3 c3 36,求abc的值
駕駛證的B1 B2 C1 C2是什麼意思
車牌中的C1,C2,B1,B2牌分別是指 能開什麼車