關於C語言的題!若int t,a 5,b 6,w

2021-04-19 19:01:03 字數 4835 閱讀 3497

1樓:匿名使用者

氣氛上來看應該是 0

2樓:盤金金

b=0 (false)

c語言。。求解???若定義:int w=1,x=2,y=3,z=4,a=5,b=6; 則執行語句(

3樓:王勃啊

親,一開始b就等於6好不。

你沒看到int b=6麼。。。

後來因為w>x 為假,所以 (b=y>z)就不執行了。

b就保持了原來的值

4樓:匿名使用者

此語句順序執行,先執行a=w>x,條件為假,因此a=0;&&前有一條件為假,所以後邊的語句不執行,因此b=6.

5樓:曾經單純

選b解釋:

w>x不成立,所以a=0,那麼&&運算子的左值(a=w>x)整體為false;

因為&&的短路效果,就是左值為false,則不計算右側表示式;

所以b還是為最初賦值的6

綜上:a=0,b=6

6樓:執筆

y大於z為假,所以b等於0。同理x等於0

(c語言,很簡單的我都不懂)若w=1,x=2,y=3,z=4,則條件表示式w

7樓:墨汁諾

執行bai結果為1,也就是w的值。

du這句話首先判斷wzhi是否成立dao成版立就返回w否則權判斷y如果w小於x為真則取w為假取y,如果y小於z為真則取y為假則取z。

8樓:噓

若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語言庫函式相同,在程式中各種識別符號儘量不要重複,以便區分。選擇變數名和其他識別符號時,應注意做到 「見名知義」。

9樓:鍾曉鴻吉珠

w以先加括號來區別du,即為w(

zhiw) : (ydao

意思就是,內如果w則取(w)否則取(y一個條件選容擇,繼續判斷,如果滿足y

10樓:

1 如果w小於x為真則取w為假取y,如果y小於z為真則取y為假則取z

c語言:已有定義int x=3,y=4,z=5;則表示式 !(x+y)+z-1&&y+z/2的值是?

11樓:

答案是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語言運算子的優先順序:

如果同一優先順序的運算子,結合次序由結合方向所決定。

12樓:匿名使用者

只是等於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我吧!嘻嘻~~~~~~

13樓:匿名使用者

1優先順序: 算數》條件》關係》賦值

關係中的優先順序: 非》與》或

14樓:匿名使用者

1,把運算子優先順序搞清楚就好了

15樓:匿名使用者

x等於y加4。四家外加1+3+5+4+1等於三五+4+5+1。

16樓:匿名使用者

!(3+4)+5-1&&4+5/2

=!7+4&&4+2

=!11&&6

所以說那個式子的值是:不是11並且是6

c語言問題 若有說明int a[][4]={1,2,3,4,5,6,7,8,9};,則陣列a第一維

17樓:格子裡兮

若有說明int a[][4]=;則陣列a第一維是3。

定義陣列並賦值時c語言規定下標是這樣的,a[n]中的n個元素應該是a[0]....a[n-1]。。

因此int a[4]的寫法就是表示,第一維大小沒限制,但是第二維陣列大小就是4,也就是int a[4]=,,},明顯是3。

分析:二維陣列的一維大小,即指二維陣列的行數,在本題中,按行對二維陣列賦值,因此內層有幾個大括號,陣列就有幾行。

18樓:杜爺1號

答案是b,3.

int a[4]的寫法就是表示,第一維大小沒限制,但是第二維陣列大小就是4,也就是int a[4]=,,},明顯是3.

19樓:小兆

你定義的就是一個二維陣列,第二維的個數是4,為了把所有的資料能分成四份有沒有遺漏,那第一維就是3了。

20樓:寂寞的菸頭哥

首先看陣列後面為4表示有四列二維陣列是

1234

5678

9000

這裡就可以很明顯的看出是三行,所以就是a[3][4],第一個叫做第一維,第二個叫做第二維

c語言上的問題 !(a+b)+c-1&&b+c/2的值 a=3,b=4,c=5

21樓:聽不清啊

整個表示式的值為真(即 1)

!(a+b)=!7=0

!(a+b)+c-1=0+5-1=4

b+c/2=4+2=6

原式=4&&6=1 //兩個非0的值,即兩個true,相與的值,仍為true,即1

22樓:匿名使用者

根據從左到右計算順序,結合運算子優先順序,根據定義

a = 3, b = 4, c = 5,假定 a,b,c 為 int。真值為1,假值為0。

計算步驟如下:

1、計算 a + b,結果為 a + b = 7

2、計算 !( a + b) 結果為 0,也可以認為是false(假)。

3、計算 c/2,假定c為int時,結果為 2(取整),為float或者double時為2.5,但不影響最終結果,因為都是真值(非零值)。

4、計算 0 + c,結果為 5

5、計算 5 -1,結果為 4。

6、計算 b + 2 或者 b + 2.5,結果為 6 或者 6.5。

7、計算 4 && 6 後者 4 && 6.5,因為兩邊都為非零值,所以結果為 1,或者true。

這裡主要是一個運算子優先順序的問題,在本表達多中。

小括號的優先順序最高,所以最先計算括號內的值。

其次是邏輯非,然後是除法,然後是 加減法,最終是 邏輯與。

23樓:匿名使用者

這個是邏輯運算只討論真假,與數值沒有多大關係只要弄懂運算級別高低就可以最後結果為一,不懂可以mm我

24樓:匿名使用者

()優先順序最高先算 !(a+b) =!7=0算術運算子大於&& 所以先算c-1=4

* /大於加減先算c/2=2然後加b等於6最後相與 4&&6 真與真還是真 最後等於1

25樓:麒麟也涅槃

a=3,b=4,c=5

a+b=7

!7=0

c-1=4 為真

b+c/2 不為0 所以也是真

真&&真 值為真 即=1

26樓:k寂寞的小炮

結果等於1

!(a+b) = 0;

0+c-1 = 4;

b+c/2 = 6;

6&&4 = 1;

27樓:匿名使用者

整個表示式為1啊···

28樓:有郊範圍

!(a+b)+c-1&&b+c/2=1

29樓:皚子萋萋

!(a+b)=0;1&&b=1;所以0+5-1+5/2=6

關於C語言的,關於C語言

先是輸入字元到字串str1裡面,然後輸入一個整數,這個整數不能大於字串str1裡面的字元的個數。上述程式的作用是把字串str1裡面的字元從第m個開始複製,將複製結果存到字串str2裡面,然後輸出字串str2。include void main 0x開頭是16進位制數 0開頭是8進位制數 101代表a...

關於一道c語言題,求詳解,急求,關於一道C語言題,求詳解,急求

在主函式裡 是先執行fx 這個函式的,而執行這個函式得到的值x 15,而後x x a 15 5 20.a 5 所以輸出是 20 和 5 主函式的x帶的是全域性變數的值是fx函式得到的x的值15,而不是定義全域性變數的初始值,也不是fx函式裡x的初值 在這個程式裡用全域性變數無非是想說明全域性變數x在...

關於C語言的問題,關於c語言的問題?

語法錯誤咱不討論。從邏輯上,if a b else t a a b b t 應該是說,如果a b,則不操作,否則 即a b 交換a,b的值。但是注意 else下如果無大括號,則表示else內只執行第一句。所以應該為 else 下面兩句同理。可能表達不是很清楚,但你應該能看懂吧。希望對你有幫助。if後...