1樓:南瓜蘋果
?:稱為條件運算子。?:就是表示?前的表示式的值是否為真,是的話取冒號前的值,否則取冒號後的值。
相當於:
if (x>y)
else
擴充套件資料
c語言中條件表示式的通用形式如下:
exp0=exp1?exp2:exp3
如果exp1為真(非0),那麼把exp2的值賦給exp0;如果exp1為假(0),那麼把exp3的值賦給exp0。
2.verilog語法中也有類似c語言中的條件表示式
如下:inout sda;
assign sda=(flag==1)?data_buf:1'bz;
當flag==1時,sda的值等於傳送的資料的data_buf(sda相當於output型別),
當flag==0時,sda的值變成高阻態(sda相當於input型別)。
2樓:尤永修喻辰
c中x+(y>!z)這種表示式寫的其實很不好解釋:括號中優先順序
!高於》
先求!z
也就是表示式
的邏輯取反
z非01!z
=0;z=0則!z=1
然後判斷y的值
是否大於!z
最後用x+上上一步判斷的值
這樣寫的不好處在於
混用邏輯表示式和整型變數
(假定xyz是int之類)
寫法不嚴格,很容易編譯器警告(雖然不會報錯)。屬於習慣不好的寫法,儘量避免
3樓:玩轉困難
這句話的意思是:
如果x>y為真,那麼把x的值賦給z,否則把y的值賦給z。
?在這裡起判斷作用。
:和?一起是c語言裡一起用的,是基本語法,書上有的。。
你好好找找書上,以後的c++和c#裡也有這種寫法
4樓:依夏青蘭晨
根據優先順序計算,先算括號裡面的y>!z,如果z!=0的話,!z就為0,z為0的話!z就為1,
然後y>(!z),判斷y是否大於1或者0(之前已經提到了),大於就返回1,不大於1就返回0,最後再和x相加就行了
舉個例子:x==2,y==2,z==3
得出來的就是3。以上
5樓:愈升榮其寒
先求!z的值,如果z是一個非零值,則!z為0,如果z為0,則!
z為1,然後比較y與!z的關係,若z為非零值,則即為判斷y>0是否成立,成立則y>!z的值為1,否則為0,若z為0.
則即為判斷y>1是否成立,成立則y>!z的值為1,否則為0,。最後用x的值加上y>!
z的值。
6樓:郯媛女秦丁
先取z的否定
判斷一是否大於z的否定
再加上x的值
!zz的否定
當z為非0值時
!z=0
z為0時
!z=1
所以最後的值
就是x+0
或者x+1
7樓:張簡元芹是群
z取反如果y>z的取反則值為1
否則則為0
x再加上0或者1也就是上面的結果
8樓:匿名使用者
?:是個三元運算子
a?b:c 的意思是,如果a等於0結果就是c,否則結果是b
x>y?x:y的意思是,如果x>y 這個式子結果是x, 否則式子結果是y
9樓:匿名使用者
相當於:
if x>y
z=x;
else
z=y;
?就是表示?前的表示式的值是否為真,是的話取冒號前的值,否則取冒號後的值。
10樓:匿名使用者
?:是唯一一個三元運算子。意思是,先判斷?號前的表示式x>y,如果為真,則x>y?x:y這一整個表示式的值為x,否則為y。
z=x>y?x:y的意思是,如果x>y,則z=x;否則z=y。即將x和y中較大的一個值賦給z。
11樓:匿名使用者
假如z=x是真的話! 就是z和x相不相等!等就是真
(x:y)真就輸出x的值假的話輸出y。
c語言裡面z=x>y? x:y;什麼意思 怎麼用
12樓:祈蕾杞培
這句話的意思是:
如果x>y為真,那麼把x的值賦給z,否則把y的值賦給z。
?在這裡起判斷作用。
:和?一起是c語言裡一起用的,是基本語法,書上有的。。
你好好找找書上,以後的c++和c#裡也有這種寫法
13樓:賀淑珍光女
z=x>y?
x:y;
把中x,y大者賦值給z,
x>y?
x:y;
如x>y成立則(x>y?
x:y)=x
不成立則(x>y?
x:y)=y
a?b:c
先判斷a是否成立,
成立則(a?
b:c)=a
不成立則(a?
b:c)=b
c語言裡z=x>y?x;y什麼意思
14樓:匿名使用者
我試了一下,沒問題呀,你看看**不一樣?
#include
int max(int x,int y)
main()
15樓:蒼冥
你這裡max(int x,int y)前面有沒有int應該是int max(int x,int y)其它應該說沒什麼問題,這個的確是求最大值
z=x>y?x:y;等價於if(x>y)z=x;else z=y;
c語言函式中,z=x>y?x:y; 這一句是什麼意思呢?
16樓:匿名使用者
這是c中的三元運算,其格式為:
x = e ? a : b ;
x是用來接收結果的
e是個邏輯表示式
?: 是一組運算子
a , b是兩個備選變數
意思是:當e為真時,返回a,即x=a 。 否則,返回b,即x=b可以用if語句來替換它,如:
if ( x>y )
z=x;
else
z=y;
17樓:__峰迴路轉
三元運算子。
首選是比較x和y哪個大,z = x>y? x:y; 如果x > y 為真,就是x是大於y的就返回的值x賦值給z,否則就返回y賦值給z。
18樓:匿名使用者
判斷x>y是否正確,如果x>y正確,把x的值賦給z,如果錯誤,把y賦給z
19樓:匿名使用者
z賦值為x和y的較大值。
20樓:我只會輔助丶
x大於y,z=x
否則z=y
c語言中z=x>y?x:y 是什麼意思
21樓:匿名使用者
?:是一個三目運算子,他的意思是如果問號前面的表示式為真,則返回:之前的表示式的值,否則返回:之後的表示式的值
這句話可以拆解為
if(x>y) else
也就是將x、y的較大者賦值給z
在c語言中,該語句在z=x>y?x:y中是什麼意思,問號表示什麼意思
22樓:匿名使用者
這是條件表示式 z=x>y?x:y 分為條件表示式1?
表示式2:表示式3 若條件1為真則 表示式值為2的值 若1為假則表示式值為3
23樓:匿名使用者
如果x>y,z=x 把x的值賦給z如果xy)z=xelse if(x c語言函式中,z=x>y?x:y; 這一句是什麼意思? 24樓:匿名使用者 意思是z=x>y? x:y; 把中x,y大者賦值給z, x>y? x:y; 如x>y成立則(x>y? x:y)=x 不成立則(x>y? x:y)=y a? b:c 先判斷a是否成立, 成立則(a? b:c)=a 不成立則(a? b:c)=b c語言是一門通用計算機程式語言,應用廣泛。c語言的設計目標是提供一種能以簡易的方式編譯、處理低階儲存器、產生少量的機器碼以及不需要任何執行環境支援便能執行的程式語言。儘管c語言提供了許多低階處理的功能,但仍然保持著良好跨平臺的特性,以一個標準規格寫出的c語言程式可在許多電腦平臺上進行編譯,甚至包含一些嵌入式處理器。 c語言繼續發展,在2023年,很多有識之士和美國國家標準協會為了使這個語言健康地發展下去,決定成立c標準委員會,建立c語言的標準。委員會由硬體廠商,編譯器及其他軟體工具生產商,軟體設計師,顧問,學術界人士,c語言作者和應用程式設計師組成。2023年,ansi釋出了第一個完整的c語言標準。 z=x>y?x:y 在c語言中什麼意思 25樓:匿名使用者 這是個三目運算,等價於: if ( x>y ) z=x ; else z=y ; 三目運算格式為 e1 ? e2 : e3 ; 如果e1成立,返回e2的值,否則返回e3的值 ! 26樓:暮影 我把它轉化為if語句給你看看吧: 三元運算子: 如果首先判斷x>y,如果是則z=x,否則z=yif (x>y) z=x; else z=y; 27樓:匿名使用者 如果x比y大 那麼就把x的值賦給z 否則把y的值賦給z 28樓:匿名使用者 if x>y, z = x。反過來if x<=y,z=y 29樓:貝凝進飛柏 這句話的意思是: 如果x>y為真,那麼把x的值賦給z,否則把y的值賦給z。 ?在這裡起判斷作用。 :和?一起是c語言裡一起用的,是基本語法,書上有的。。 你好好找找書上,以後的c++和c#裡也有這種寫法 c語言中z+=x 30樓:oo沒有蠟 判斷 x 為真 則 z=z+(x++); 為假 則 z=z+(y++); 31樓:匿名使用者 a?b:c 若a真,返回b 若a假,返回c 32樓:不懂就來問高手 把x加z賦值給z,若此時z比y小就將原x加1,否則將原y加1。回答完畢,給點分吧可憐可憐,小主人~~~ 等於的意思 是賦值的意思。只要理解到 賦值不是等於 就能分辨了。比如 int a a 2 賦值,讓a的值變成2 a原來是多少是不知道的 if a 3 判斷 a是否等於3,此時a的值仍然是2a 這是一個邏輯符號,也就是說,結果是真或者假.a b 當a與b相等時是真,否則為假.還有,迴應一下klboy1... 非x即not x也就是說,表示x的相反的一面 如果if x 成立,那麼if x 就不成立。反之亦然。如果x不是零,那 x就變成零,如果x是零,那麼 x就變成1 x 字串 內容是 x x 註解行 x 註解行 條件 if x 0 printf x not equ zero n else printf x... 在c語言中,for語句使用最為靈活,它的一般形式為 for 表示式1 表示式2 表示式3 語句它的執行過程如下 先求解表示式1。求解表示式2,若其值為真 非0 則執行for語句中指定的內嵌語句,然後執行下面第3 步 若其值為假 0 則結束迴圈,轉到第5 步。求解表示式3。轉回上面第2 步繼續執行。迴...c語言中是什麼意思,C語言中 是什麼意思
c語言中是什麼意思C語言中x是什麼意思
c語言中for是什麼意思C語言中for是什麼意思?