1樓:匿名使用者
x=1,2,3,4是逗號表示式,由4個表示式順次執行組成,第乙個表示式是x=1第二個是,2,第三個是3,第四個是4
x=(1,2,3,4)是賦值表示式,是把逗號表示式1,2,3,4的值賦給x
2樓:毛團兒球
逗號表示式的形式是(表示式1,表示式2) 結果為後面個表示式的結果。
所以x=(1,2,3,4)為4.
至於第乙個 不是表示式 所以x=1啊
問題解決了 、,就採納,別拖著。否則下次再問沒人會給回答
3樓:匿名使用者
因為x=1後是,表示式結束了
c語言中 x=(1,2,3,4);x的值是多少
4樓:匿名使用者
值為4.
(1,2,3,4)
這個是逗號運算表示式. 值是最右的值,也就是4所以 這裡相當於x=4;
5樓:匿名使用者
逗號表示式的結構是最後乙個逗號後面的值,所以結果是4.
6樓:匿名使用者
在c語言這個是逗號運算浮,根據運算浮的結合性,逗號運算的順序是從左到右,所以x 的值為最右邊的值既x=4。
7樓:匿名使用者
x=4,這是乙個逗號表示式,表示式的值是最後乙個表示式的值。
8樓:匿名使用者
4,c的","是直接取後值。所以是4。
9樓:吉祥弓長
4,記憶中是「,」號好像算最後乙個!!忘了跑遍程式不得了!
c語言:已有定義int x=3,y=4,z=5;則表示式 !(x+y)+z-1&&y+z/2的值是?
10樓:
答案是1。
涉及到的運算子: ! () + - && /運算子優先順序為:() ! / + - &&運算過程:
x=3,y=4,z=5
!(x+y)+z-1&&y+z/2
!(3+4)+5-1&&4+5/2
所以表示式計算步驟為
!(3+4)+5-1&&4+5/2 -> !7+5-1&&4+5/2!7為 0
-> 0+5-1&&4+5/2
5/2 整數除整數得整數 2
-> 0+5-1&&4+2
-> 4&&6
邏輯運算 &&
擴充套件資料c語言運算子的優先順序:
如果同一優先順序的運算子,結合次序由結合方向所決定。
11樓:匿名使用者
只是等於1的,我是經過turbo c2.0編譯過的,答案應該沒什麼問題的,程式是:
main()
答案為什麼會等於1呢?那是因為運算級別的問題,根據運算級別,實現算括號裡面的先,所以程式就變成!7+z-1&&y+z/2;
然後就算!運算,由於7是大於1的,也就是真,所以!真就是假,也就是0,所以函式就變成0+z-1&&y+z/2;
然後再算除號的,由於你這裡兩個都是整形的,所以小數點後面的數忽略,所以就變成0+z-1&&y+2;
接著計算加減運算,也就是變成4&&6;
因為4和6都是大於1的數,所以就是真,由於&&兩邊都是真的話,輸出的就是真,所以結果就是1。
要是還有什麼不明白的話,就mm我吧!嘻嘻~~~~~~
12樓:匿名使用者
1優先順序: 算數》條件》關係》賦值
關係中的優先順序: 非》與》或
13樓:匿名使用者
1,把運算子優先順序搞清楚就好了
14樓:匿名使用者
x等於y加4。四家外加1+3+5+4+1等於三五+4+5+1。
15樓:匿名使用者
!(3+4)+5-1&&4+5/2
=!7+4&&4+2
=!11&&6
所以說那個式子的值是:不是11並且是6
c語言計算表示式s=1-2/x+3/x^2-4/x^3+5/x^4-6/x^5+......(x>!),要求計算精度為n項的絕對值小於10^-5
16樓:匿名使用者
分析:用迴圈來實現累加,迴圈變數取值:1,2,3,...
每次迴圈加1迴圈結束條件=當前項絕對值<1e-5即迴圈條件是t>=1e-5每項的分子:1,2,3,...就是迴圈變數取值每項的分母:
從第2項開始是1,x,x*x,x*x*x,...是前一項的分母再乘以x得到
每項的符號:1,-1,1,-1,...是前一項符號乘以-1得到#include
void main()
printf("%d項和為%lf\n",n,s);}
在c語言中,若 int w=1,x=2,y=3,z=4; 則表示式w>x?w:z>y?z:x的值是多少。具體步驟
17樓:匿名使用者
4。1、先執行z>y?z:x,判斷z是否大於y,結果為真,取z的值,結果為4;
2、再執行w>x?w:4,判斷w是否大於x,結果為假,結果為4。
若有多個條件表示式像這樣連在一起:x=《表示式1>?《表示式2>:
《表示式3>?《表示式4>:《表示式5>···執行順序是從右到左依次判斷再求出最後的x,即所謂的右結合性。
18樓:
這條語句可以轉換成if語句,這樣寫應該明白很多if (w>x)else if(z>y)else顯而易見,w不大於x,y大於在,表示式為z的 值,4而且最好加個括號,這樣寫:w>x?w:
(z>y?z:x)
19樓:匿名使用者
式a?b:c值為:若a為真,則b;若a為假,則c。
但有一點是值得注意的,那就是問號表示式的結合性,問號表示式是從右往左的運算方向
尤其是當問號表示式巢狀使用時得注意這個問題,例如**:int w=1,x=2,y=3,z=4;
printf("%d",w>x?w:z>y?z:x);
正確結果是:4
純手打,望採納!!!!
20樓:匿名使用者
答案是4
先加上括號進行簡化
(w > x ? w : (z > y ? z : x))因為w比x小,所以取問號表示式的第二個分支,第二個分支是乙個問號表示式,並且z > y條件成立,所以取z的值,為4
21樓:哈切八搭
這個是逗號表示式,第乙個意思是如果w>x,那麼就取w的值,反之取z,第二個是取的值是否大於y,如果是,取z的值,否則x的值,而且逗號運算先後順序大於普通運算子,答案是4
22樓:
23樓:我就是神不一樣
在de e wa d j g
24樓:匿名使用者
考察邏輯的那裡 。
c語言問題 int i,x[3][4]; i=*(*(x+1)+1)是什麼意思,請詳細解釋下。謝
25樓:匿名使用者
x是int *[3][4]型別的變數起始位址x+1是第1維的增加,位址增加的尺寸為int[4],x+1相當於&x[1][0]即第2行起始位址
*(x+1)取得x陣列第2行起始位址*(x+1)+1後面的加1是訪問第2行第2個元素,相當於加第2維下標,即指向x[1][1]
*(*(x+1)+1)等於x[1][1]中存放的資料
26樓:匿名使用者
x 表示: 二級指標,其值與 x[0][0] 的位址值相同x+1 表示: 二級指標,其值與 x[1][0] 的位址值相同*(x+1)表示:
一級指標,其值與 x[1][0] 的位址值相同*(x+1)+1 表示: 一級指標,其值與 x[1][1] 的位址值相同
*(*(x+1)+1) 表示: x[1][1] 的值
27樓:匿名使用者
額額額額,陣列和指標結合,比較難,尤其是二維陣列,
具體啥意思,我得再研究研究,要是初學者的話,可以先忽略這部分,
28樓:心在那天
我們可以把x[3][4]看成乙個行3列4的**,只不過它的序號是從0開始,x就是這個**的首位址即行0列0的位址,所以x+1就是行1的行位址,而*(x+1)則是取行1的值即列的首位址即列0的位址所以*(x+1)+1即行1列1的位址,再對他們取值則是行1列1的值。
(c語言,很簡單的我都不懂)若w=1,x=2,y=3,z=4,則條件表示式w
29樓:墨汁諾
執行bai結果為1,也就是w的值。
du這句話首先判斷wzhi是否成立dao成版立就返回w否則權判斷y如果w小於x為真則取w為假取y,如果y小於z為真則取y為假則取z。
30樓:噓
若w=1,抄x=2,y=3,z=4,則條件表襲達式w是4。
(baia>b)?a:b;若(dua>b)為真,則取a,如果zhi(a>b)為假,則取b。
擴充套件資dao料:
c程式的生成過程:
c程式是先由原始檔經編譯生成目標檔案,然後經過連線生成可執行檔案。源程式的擴充套件名為 .c ,目標程式的擴充套件名為 .obj , 可執行程式的擴充套件名為 .exe 。
識別符號:
在編寫程式時,必須為函式、變數等命名,這個名字稱為識別符號。c語言中識別符號的命名規則如下:識別符號只能由字母、數字、下劃線組成;
識別符號的第乙個字母必須是字母和下劃線;識別符號區分大小寫字母,如if和if是兩個完全不同的識別符號。
合法識別符號如下: a6, b_3 , _mn 非法的識別符號如下: ab#12 , 8m , tr3:
4 , yes no識別符號不能與程式中具有特殊意義的關鍵字相同,不能與使用者編制的函式名、c語言庫函式相同,在程式中各種識別符號盡量不要重複,以便區分。選擇變數名和其他識別符號時,應注意做到 「見名知義」。
31樓:鐘曉鴻吉珠
w以先加括號來區別du,即為w(
zhiw) : (ydao
意思就是,內如果w則取(w)否則取(y乙個條件選容擇,繼續判斷,如果滿足y 32樓: 1 如果w小於x為真則取w為假取y,如果y小於z為真則取y為假則取z 在c語言中,若有定義:int y=3,x[7]={1,2,3,4,5,6,7},則表示式y+=x[5]的值 為( )。求解釋。 33樓:匿名使用者 定義乙個整形陣列,陣列包括7個元素,並初始化各個元素的值分別為1、2、3、4、5、6、7對應元素x[0]、x[1]、x[2]、x[3]、x[4]、x[5]、x[6],x[5]的值為6,y+=x[5]相當於y=y+x[5]=3+6=9。 34樓:匿名使用者 x[7] 表示7個元素的一維陣列x 35樓:匿名使用者 乙個陣列x中有7個元素 x 1,2,3,4 p x x 2 x 3 用matlab實現 第1題 令x n 1,2,3,4,5 h n 6,2,3,6,4,2 求y n x n h n 求助高手了 10 可這樣 x 1 5 h 6 2 3 6 4 2 y x.h但是,x和h元素個數不相等,不能計算,可改為 x 1 6 h 6... 因為3和2都是int型的,所以認為3 2的結果也是int的,捨棄後面的尾數,僅留下整數字的1.然後加上double型的x,複製給double型的y所以是2.0 1.x 1,1是baiint型別,賦值給double的x的時候自動提公升為 duzhidouble型別,所以x 1.0 注意1.0是doub... 不符合,3 b,z x 3是試圖給非左值表示式 3 b,z 賦值,是非法的。x 3 b,z x 3是符合c語言語法的語句嗎 為什麼 30 運算子需要兩邊都是整形,所以 x 3 不合法,b 中使用了逗號運算子,括號的返回值專就是最後乙個逗號後的表達屬式的值即a b,所以b的確是把a b付給k。對於12...matlab求 已知X 1,2,3,4求P 2P3,用matlab如何實現
C語言 若已定義X和Y為double型,則表示式 x 1,y x
x3b,zx3是符合c語言語法的語句嗎為什麼