1樓:匿名使用者
執行的時候bai,應該寫a>b && b>c ,你du這樣寫的結果就是:先執zhi行a>b,結果為真,在c語言裡dao真用1表示,就
版是算式權a>b結果為1,接下來,1>c,結果為假,所以a=c。
比如你寫死迴圈的時候寫while(2>1){}的時候是死迴圈,寫while(1)的時候也是死迴圈,明白了吧。
2樓:匿名使用者
if(a>b>c)a=b;else a=c
a>b>c這個演算法是從左到右的,也就是先算a>b成立,為1,然後再算1>c,此時c=1,所以if條件不成立,執行else語句。也就是a=c=1.即a=1.
3樓:冬日秋巡春逐鹿
int a=2,b=3, x=1;
if(a>2)
if (b>2)
x = 2 ;
else
x = 3;
printf(抄"%d",x);如果是襲這個的bai話,else對的du
是第zhi二dao個if.
4樓:落月
if(a>b&&b>c)
else
a=1;
c語言中, 已知int a=1,b=2 ,c=3 以下語句執行後a,b,c的值是??
5樓:思念不溼
應該是看成
if (a>b)
a=b;
b=c;
if只管到c=a ; 因為a=1,b=2,不滿足if,所以執行後面的,a=b=2,b=c=3,c還是3選b
6樓:uspta鄭州站
條件a>b不成立
所以c=a執行,所以
a=2,b=3,c=3
7樓:當上帝愛上天使
a,原文中a不大於b,則不滿足if條件~則不執行下列語句~所以abc的值不變
8樓:匿名使用者
沒學過都會 不是打擊你哦 都告訴你整形常量 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=1,b=2,c=3; c=(a+=a+2),(a=b,b+3); printf
9樓:匿名使用者
c語言copy提供一種特殊的運算子——逗號運算子。用它將兩個表示式連線起來。如:
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。
10樓:匿名使用者
c=(a+=a+2),(a=b,b+3);
->c=(a+=a+2);(a=b,b+3);
->c=(a+=a+2);a=b;b+3;
11樓:焚香木弋
int a=1,b=2,c=3;
c=(a+=a+2),(a=b,b+3);
相當於兩個順序語句:
先執行了c=(a+=a+2)這個語句得出c=a=a+1+2=4;
然後執行a=b,b+3;得出a=b=2;後面專的b+3單純是迷惑人
屬而已,不起作用。
所以輸出的答案是a=2,b=2,c=4;
12樓:沫宸萱
樓主自己敲下**執行結果不就知道了?
13樓:康康
2,2,4
可以自己編譯跑一下啊,比來問以後效率得多
c語言, int a=1,b=2,c=3,d=4; if((a=2)&&(b=1)) c=2;
14樓:匿名使用者
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
15樓:匿名使用者
我執行的結果是2,1,2,4
第一個if中a=2(b=1)是賦值,和a==2(b==1)是不一樣的
16樓:匿名使用者
if((a=2)&&(b=1)) 相當於if(2&&1) ,結果很明顯
17樓:雪月靈妖
1.結果是: 2,1,2,4
不知道你為什麼是5,1,2,-1
2.if((a=2)&&(b=1))
a=2 => 2 真
b=1 => 1 真
c語言中 int a=3,b=2,c=1; c-=++b;b*=a+c abc分別為多少
18樓:續樹花朱橋
①cos[(a+c)/2]=√3/3
cos(π/2-b/2)=√3/3【a+c=π-b-sin(b/2)=√3/3【餘弦轉正弦。
cosb=1-2sin²(b/2)=1-2*(1/3)=1/3【倍角公式。
②版向量
權ba·向量bc=a*c*cosb=2
a*c=6
c=6/a;
cosb=(a²+c²-b²)/2ac=1/3a²+c²=12
a²+36/a²=12
(a²)²-12a²+36=0
(a²-6²)²=0
a²=6
a=√6
c=√6
大學c語言問題 執行「int a,b,c;a=b=c=1;--b&&++c||++a;"後,變數a
19樓:我才是淡淡
|,首先你要把整個結構弄清楚,&&的優先順序高於||,所以上面的式子等價於(--b&&++c)||(++a),
先看(--b&&++c),--b導致b的值為0,所以(--b&&++c)必然為假,所以c就不會加一了,c的值還是1。然後(--b&&++c)為假並不能直接斷定(--b&&++c)||(++a)的真假,因為||需要兩邊為假才是假,所以需要判斷右邊的(++a),這裡a自加一次變為2,(++a)為真,整個表示式(--b&&++c)||(++a)的值為真。最後a,b,c的值分別是2,0,1
20樓:
你的**是順序結構;
所以執行的時候是先對a進行賦值,也就是a=1;
至於後面對b和c的運算,並不能改變a的值。
第一步 int a,b,c;
第二步 a=b=c=1;
第三步 --b&&++c||++a;//這個地方只有++a能改變啊的值 b和c對a的值不影響
第四步輸出a的值;
21樓:益達是誰
這判斷式a,b,c應該是2-0-2啊,怎麼是201,還有我想問這式子對嗎
22樓:匿名使用者
答案應該是2 1 1
c語言中,設int a,b,c;執行表示式a=b=1,a++,b+1,c=a+b--後,a,b和c的值分別是 ?
23樓:葉子離去是紀念
a=b=1 //此時a值為1,b值為1;
a++ //a自增為2b+1 //不對b的值產生任何影響c=a+b-- //首先,b--優先運算,專運算結果是1,然後b自減
屬為0,此時a值為2,再算c,所以c值 為 a+(b--)值為2+1=3
24樓:匿名使用者
a=b=1,//a=1 b=1 c=0a++, //a=2 b=1 c=0b+1, //a=2 b=1 c=0c=a+b-- //a=2 b=0 c=3//----------------------區別(i++)和(++i)-------給你個例回子
int i=1;
int y=i++;// y=1 i=2 //i--同理答int i=1;int y=++i;// y=2 i=2 //--i同理
25樓:匿名使用者
a=1 -> a++ (a=2)
b=1 -> b+1 (b=1) -> b-- (b=0)
c=a+b=2+1=3
c語言賦值表示式問題:若定義有語句:int a=3, b=2, c=1; 以下選項
26樓:滄海雄風
a錯了,不能將3賦值給表示式,b=4已經是個表示式了,既然是表示式就只有真假(即0和1),
而 (a=3*5)=4*3 中的a=3*5 是賦值
27樓:匿名使用者
我在vc++6.0中貼上你的**,編譯執行都通過#include
int main()
結果2 4 4
28樓:匿名使用者
賦值語句的物件只能是變數,而不是表示式 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 是錯誤滴。
若有定義int a 3,b 2,c 1,則執行程式段if
a的值為1 條件a b c的值為假,所以執行a c,結果a 1 a b c相當於 a b c 先計算a b,為真,值為1,計算1 c,為假,整個表示式的值就是假 若有定義 int a 3,b 2,c 1 則執行程式段if a b c a b else a c 之後,a 問題不全啊?a的值?a b c...
why選A?語句int a 3,b 2,c 1錯誤的賦值表示式是A a b 4 3 B a b c 1 C a b 4 c D a 1 b c 4)
a b 4 3 這是賦值運算,bai從右至du左結合,但是zhi 這裡有括號b 4會被先執行,執dao行完後結內果為false 零 這容裡沒有問題,後面a的賦值就有問題了,到底是把0賦給a,還是將3賦給a呢?問題在這,你懂了嗎?a b 4 3 先運算 b 4 結果為false 即 0 a 0 3 不...
c語言中,定義inta30,2,4,
a 1 這種寫法是錯的,a是陣列第一個元素的地址,a 1,a 1 2,這明顯是錯的。c語言中 a 1 什麼意思 int a 3 4 1,3,5,7 2,4,6,8 a 1 的值 a 1 3。a 1 這種寫法是錯的,a是陣列第一個元素的地址,a 1,a 1 2,這明顯是錯的。已知 int a 4 3 ...