c語言x y和x y有什麼區別,c語言 x y與 x y有什麼區別?x 3,y 4,!(x 0)是什麼意思啊?

時間 2021-08-11 17:19:59

1樓:石孝柴詩

x=y是一個賦值表示式,將y的值賦給x

x==y是一個邏輯表示式,判斷x是否等於y,其值為1(真)或0(假)

2樓:

c的函式中的形參接收的都值拷貝。用x=&y後使x指向了y,但x和y都是fun中的區域性變數,退出後都不存在了,影響不到主函式中的變數值。而*x=y;是把y的值(也就是主函式中的b的值)賦給x指向的變數,x指向的變數不是a嗎?

所以實質就是把b的值賦給了a;而返回值是y=t,實質就是t,t既然先等於了*x,*x又就是a,b=fun(&a,b);返回給b的不就是a嗎?這就實現了交換。另說一句return y=t;中y=是多此一舉,寫return t;就行了,因為y是fun的區域性變數,在主函式中根本不可見!

3樓:渾楊氏刑嫻

if(x==y)是判斷x與y是否相等,相等則為真,不等則為假

if(x=y)這個是把y的值賦給x,然後判斷表示式x=y的值,c語言中,賦值表示式是有值的,它的值是賦值符號右邊的值,即x=y的值是y的值,如果y的值為0,那麼x=y為假,否則為真

一般來講,程式設計過程中if(x=y)這種寫法是錯誤的寫法,程式能夠通過編譯,也能夠執行,但是可能會出現意料之外的結果。

4樓:匿名使用者

x = &y。 fun函式的區域性變數x指向的地址被改變,注意這兒的指標是值傳遞, 所以不會對傳入的變數有任何影響,得到的結果就是a,b變成了相同的數值。 這樣做沒什麼意義。

5樓:匿名使用者

c語言x=&y和*x=y有什麼區別?整型和指標的問題啊~

c語言!x==y與!x=y有什麼區別?x=3,y=4,!(x<0)是什麼意思啊?

6樓:匿名使用者

x==y是比較x和y是否相等。

x=y是賦值,把y的值賦值給x

!是邏輯非,對右面部分的否定。!(x<0)當然就是把x<0否了,就是傳說中的x不小於0,你高興的話寫成x>=0也隨你

c語言中if(x==y)和if(x=y)有什麼區別

7樓:天雨下凡

if(x==y)是判斷x與y是否相等,相等則為真,不等則為假

if(x=y)這個是把y的值賦給x,然後判斷表示式x=y的值,c語言中,賦值表示式是有值的,它的值是賦值符號右邊的值,即x=y的值是y的值,如果y的值為0,那麼x=y為假,否則為真

一般來講,程式設計過程中if(x=y)這種寫法是錯誤的寫法,程式能夠通過編譯,也能夠執行,但是可能會出現意料之外的結果。

8樓:匿名使用者

==是等於的意思,比如x==100這個語句,如果x的值確實是100,則返回1,如果x的值不是100 則x不等於100,則返回0。

=是賦值的意思,只要賦值成功,都返回1。比如x=1,就是把1賦給x,換句話說,在這個句子之前,x可能沒有值,或者有其他值,但是這個語句之後,x就等於1了。

所以,如果是要判斷x是否等於y,那應該用x==y

x>y?x:y;在c語言中代表什麼意思

9樓:匿名使用者

一樓說的還有點問題。a?b:

c 這個運算是判斷a的真假,若是真就執行b如是假就執行c,所以x>y?x:y;這句話的意思就是判斷x和y值得大小,要是x>y結果就是x,否則就是y,也就是說這句的是輸出的x和y中較大的那個數。

可以使用一下程式來檢測:

#include

main()

10樓:匿名使用者

(!x++||y--)

這個邏輯大概就是

x等於0或者y不等於0最後表示式結果為1

++和--是後做的

還有如果x為0,y就不--了

11樓:儲晨權紅雲

很久以前學的。還記得一點點。應該是如果:x>y,取x。反之則取y。

12樓:fei仰角30度

? : ; 是c語言中唯一一個三目運算子。如果x大於y為真,結果輸送x,否則為假結果輸送y;

13樓:匿名使用者

這是一個判斷句。意思是,若x>y則結果是x,反之,結果是y.

14樓:supper大毛

若x>y,則表示式的值為 x;

否則為 y

15樓:匿名使用者

如果x大於y,就是真,如果x小於y就是假

c語言中x*(y)+z和x*y+z 的區別

16樓:匿名使用者

這是巨集替換的特點!

巨集替換是在編譯時,將源程式中與巨集定義符合的**進行內“傻瓜容”式替換。

如:#define max(x,y,z) x*(y)+zprintf("%d/n", max(a+b.b+c,c+a) ); 在編譯時替換成printf("%d/n", a+b*(b+c)+c+a );

而#define max(x,y,z) x*y+zprintf("%d/n", max(a+b.b+c,c+a) ); 在編譯時替換成printf("%d/n", a+b*b+c+c+a );

可見兩個表示式在編譯後的結果是不同的,因而結果不同!

17樓:什麼名真難起

y = a + b 加括號先算括號裡面的 比如 x*(y) = x*(a + b)

如果不加括號就是x*y = x*a + b

這是一道程式設計師面試的時候經常遇到的問題

18樓:平天一狼

define 只是把原式子替換 如果加括號 則為a+b*(b+c)+c+a 如果不加括號為a+b*b+c+c+a 你記住 只是機械的替換掉原來的變數 在做這種題時要小心點

19樓:匿名使用者

巨集替換是在編譯時,源程式**用巨集定義**進行替換。

沒有括號時替換結果為a+b*b+c+c+a,有括號替換結果為a+b*(b+c)+c+a。

20樓:

因為* 的優先順序高於 +,所以 a+b * (b+c) + c+a 與 a+b * b+c +c+a 的結果不同

21樓:匿名使用者

沒有括號 就是a+b*b+c+c+a,有括號就是a+b*(b+c)+c+a。一個是a加上b乘以b,一個是a加上b乘以b和c的和,你說能一樣嗎?

22樓:5千零一

a+b*b+c+c+a a+b*(b+c)+c+a

c語言中x y和x y有什麼區別啊

執行先後順序的區別 代表 1,在變數前面例如 x 1代表著直接在這裡將變數值加上1,故y 6 1 5 而在變數後面,x 1代表著在執行完這一行再予以加1,故y 5 1 4 include int main int x 5,y 10 printf d d n x,y y x 1 在這裡意味著 變數x直...

c語言與e語言有什麼區別,Python和c語言有什麼區別

e語言簡單易學,可以用中文來編寫。如果你只是開發一個很小的軟體或遊戲,建議使用e語言,但是做一些大型遊戲,還是建議使用c c c語言多 我不建議學e語言 e語言的確是用漢文來編寫,但是這個必有其不完善的地方 別寫起來也沒有字母省力 現在貌似很多推廣e語言的 那都是因為他們說 英語不行 但是我感覺 有...

指令碼語言,C語言,C 語言有什麼區別

語言本質沒有區別,只是在不同領域某些語言優勢更明顯某些語言優勢更不明顯而已 c 就是在c的基礎上引入了更過的東西。c語言和c 語言的區別是什麼? 小張 c語言與c 的區別有很多 1,全新的程式程式思維,c語言是程序導向的,而c 是物件導向的。2,c語言有標準的函式庫,它們鬆散的,只是把功能相同的函式...