1樓:匿名使用者
執行後a的值是6,printf列印的是13逗號表示式,從左往右計算,表示式值取最右邊的值a=2*3=6
a*5不改變a的值,直接忽略
a+7=6+7=13
執行後a的值是6,printf列印13
2樓:擁雲莊主
逗號表示式,計算順序從左到右,依次計算,返回最後乙個表示式的值,所以,最後輸出為13。
實際執行結果:
3樓:匿名使用者
表達du式1,表示式
2逗號表示式的求zhi解過程是:dao先求解表達專式1,再求解表達屬式2,整個逗號表示式的值是表示式2的值。
賦值操作的優先順序高於逗號表示式的優先順序
多個逗號表示式可以按照從左到右的順序結合,則程式計算應該是:
1、計算 a= 2 * 3->a = 6
2、計算 a * 5 ->a = 6
3、計算 a + 7 -> 6 + 7 = 13所以結果為13!
4樓:匿名使用者
k=(x,y,z);這種表示式的結copy果就是z的值但是是要一步一步計算的,顯示計算x,在就算y,最後z.並且把z的值賦給了k
上面的步驟是 a=2*3=6=x
a的值是6
a*5=30=y
a+7=6+7=13=z
所以最後的值就是13
5樓:匿名使用者
逗號操作符的優先順序是最低的,比賦值操作符低,所以最終a=6
6樓:朱光閎熙華
if(n==0,n==1)抄f=1
逗號表示式,每個子表
襲達式都會執行,整bai個表示式的結
du果是最zhi
後的dao子表示式的結果
上題就相當於if(n==1)f=1
你可以測試下
if(n=2,n=1,n=0)
檢視結果會是什麼
自己多實踐
7樓:會飛的小兔子
c語言bai逗號表達
式是由左向右進行的du:zhik=3*2=6,k+2=8,表示式返回8。
逗號表示式用法dao:
當順序點用回,結合順序是從
答左至右,用來順序求值,完畢之後整個表示式的值是最後乙個表示式的值。
示例:main()
擴充套件資料注意事項
(1) 逗號表示式的運算過程為:從左往右逐個計算表示式。
(2) 逗號表示式作為乙個整體,它的值為最後乙個表示式(也即表示式n)的值。
(3) 逗號運算子的優先級別在所有運算子中最低。
8樓:買蝶歷春
是你看的那個bai電子書
du表述有誤,逗號zhi運算子優先順序特別低,當然dao也比賦值運算版符=低,問題中的表權達式求值順序是:
1.x=a+b得到x的值為6,賦值表示式的值也為62.y=6得到y的值為6,賦值表示式的值也為63.b+c得到表示式的值為10
4.6,10最後得到逗號表示式的值為10
顯然電子書說的y等於整個逗號表示式的值是錯的,執行結果也說明了這一點
9樓:翠**易珍
逗號copy運算子的做優先順序是最低的,所以要先算賦值運算子.
y=(x=a+b),(b+c)是乙個表示式,包括兩部分:
表示式1是乙個賦值表示式,表示式2是乙個算術表示式.
老譚的書裡說的是整個逗號表示式的值是表示式2的值,所以,整個逗號表示式的值是b+c,y的值是表示式1的值,即a+b.
他寫錯了.這樣寫就對了y=((x=a+b),b+c);
10樓:星念之劍宇
第乙個三個式子是
a=3*5=15,
a*4,a+5=20
printf最後乙個式子的值,為20
第二個(a=15),(a*4),(a+5);
只有乙個賦值語句,所以a=15
printf的值自然是15
11樓:斐未摩雍
printf(...a=2*5,a*4,a+3)中的a=2*5,a*4,a+3是逗號表示式沒錯,可你並沒有求這逗號表示式的值,只是由乙個內%d對應a=2*5指印容
出了a的值,所以是10沒有任何錯誤。你把a=2*5,a*4,a+3用()括起來寫成(a=2*5,a*4,a+3),就是求其值了;試試看是不是13?
12樓:陶紫雲係南
printf只計算第乙個匹配表示式,而忽略多餘的,因此為10.
要想實現逗號表示式的值,將它們小括號括起來,作為乙個表示式。
13樓:晉凡邗人
你好在printf函式裡
%d預設的匹配值就是a=2*5
,想要逗號表示式需要拿出來寫,而且逗號表示式要有自己的括號。
C語言表示式計算步驟,C語言表示式計算步驟
強制轉換的優先順序高於運算子 剩下的就是括號和四則運算次序了 a int b 3 int a c 2 41 int a c 強制轉換 2 b 3 int a c 2 自左向右依次進行3 int b 3 int a c 2 強制轉換4 int b 3 int a c 2 4 資料取餘5 a int b...
1033c語言的問題,C語言中表示式1033的值是
對呀,確實是這樣的 因為浮點數的精度是這個 1.0是浮點數,精度是小數點後6位。所以1.0 3是0.333333,然後乘以3就是0.999999。這個題目考查的是大家對各種資料型別精度的理解滿意請採納。這個問題是關於不同型別資料間混合運算的問題,由於1.0是浮點型,所以 回在計算時,答1.0,3 被...
c語言中逗號指的是什麼意思C語言中逗號運算子怎麼用
c語言中的逗號有兩種意思 1 表示 分隔號 的意思,就和語文中的逗號乙個意思 2 表示 逗號運算子 的意思,用它將2個表示式連線起來.例如 3 5,6 8 就稱為逗號表示式,又稱為 順序求值運算子 逗號表示式的一般形式為表示式1,表示式2。逗號表示式的求解過程是 先求解表示式1,再求解表示式2。整個...