c語言k」與「k不同之處在於,c語言「 k」與「k 」不同之處在於 ?

2021-03-11 08:56:09 字數 4893 閱讀 1490

1樓:聽不清啊

如果這兩個是直接單獨使用的話,他們之間是沒有任何差別的,反之,如果出現在表示式中,那麼前者是先把k加1以後再進行使用,後者是先取k的值進行使用,然後k的值再加1。

2樓:北京泗洪人

++k和k++在不同之處在於,表示式本身的取值不同:

++k,先做k+1,取值是k+1

k++,先取值k,再做k+1。

3樓:匿名使用者

當前語句中k的值不同,比如:

int i,k=0; i=++k; // i需要賦值,在賦值之前,做k自加1的運算回,因此執行後

答i=1,k=1

int i,k=0; i=k++; // i需要賦值,在賦值之後,做k自加1的運算,因此執行後i=0,k=1

4樓:匿名使用者

++k是k自己先加1,然後往下運算

k++是先運算一遍,等運算完一遍後,k再加1

5樓:匿名使用者

共同點(針對k這個變數):

都會讓變數k自增1

不同點(針對整個表示式而言):

++k是前置運算,先加再用。

k++是後置,先用再加。

假設k是1,++k是2,k是2

假設k是1,k++是1,k是2

6樓:杯具——悲劇

++k在for迴圈中效率更高

計算機c語言中,k++與-k++有什麼區別??

7樓:匿名使用者

k++ 和 -k++ 只是數值符號有區別,++操作在這裡是一樣的。

不過++操作有個特別的地方需要注意,放在變數前後的效果是有點不同,特別用在表示式裡面的時候。

k++ 和 ++k 不一樣,看下面的例子:

int i=4;

printf("\ni=%d\n", i);

printf("\ni=%d\n", i);

i=4;

printf("\ni=%d\n", i);

printf("\n4-++i=%d", 4-++i);

printf("\ni=%d\n", i);

i=4;

printf("\ni=%d\n", i);

printf("\n-i++=%d\n", -i++);

printf("\ni=%d\n", i);

i=4;

printf("\ni=%d\n", i);

printf("\n-++i=%d\n", -++i);

printf("\ni=%d\n", i);

輸出結果是:

i=44-i++=0

i=5-------------------

i=44-++i=-1

i=5-------------------

i=4-i++=-4

i=5-------------------

i=4-++i=-5

i=5也就是說,當用在表示式裡面的時候,++在前和在後的運算次序是不一樣的,

++在前則先對變數+1,然後再參與表示式的運算;++在後則先參與表示式運算,然後才對變數+1。

對於初學者,或者專家也好,不建議使用太複雜的表示式,**的可讀性也非常重要。

複雜的表示式並不會生成更快的編譯**,反而會使別人或自己看不懂**表達的意思,

想想一年或幾年後,你自己再來看這些**還看得明白嗎?

8樓:戈壁與清潭

int k=4;

int j;

j=k++; //j=4, k=5

k=4;

j=-k++; //j=-4,k=5

9樓:幻☆天芒

其實就是多了個負號而已、沒什麼區別呀!

如果k=1,執行前面的那句會輸出1,執行後面的那一句會輸出-1.

c語言 k++什麼意思

10樓:匿名使用者

在c語言中,如果一個數字想

自身加1,可以使用k = k + 1;這種表示式。如果開始時k=1,則經過此運算後,k的值變為2,c語言考慮到程式的簡捷性,所以使用k++,它與k = k + 1;的作用是一樣的。

另外,你需要知道k++與++k的不同,二者雖然都是在原來基礎上加1,但前者是用完k再加1,另一個是加完1再使用k。給你個小例子

int k = 0;

如果是printf("%d",k++); //列印0如果是printf("%d",++k); //列印1如果還有什麼問題可以加798244577一起討論

11樓:洪振梅稅畫

就是把k與=後面的數相加後再賦給k;

即:k+=3等價於k=k+3

但二者區別是前者運算速度快。

12樓:岔路程式緣

k是一個指標,這句話的意思是k指向的地址中存放的變數值加上2。

舉例:如果a=2,k=&a,則執行*k+=2後,a=4,相當於執行了a=a+2。

13樓:計算機之祖

!k%2==1,這是一個表示式

這裡面有三個運算子,按照優先順序從高到低依次為:!,%,==所以表示式相當於(!k)%2==1

可以發現:

當k為假(k等於0)時,整個表示式為真,表示式的值為1當k為真(k為非0)時,整個表示式為假,表示式的值為0

14樓:貪吃的xiao熊

k+=3 就是 k=k+3的意思

c的值是'b',那麼進入switch語句時為第二條case語句,執行k+=2,此時k=6,由於沒有break語句,即不跳出switch,那麼繼續執行第三條case語句,此時k=7,輸出結果,完畢!

【延展】

c語言:

c語言是一門通用計算機程式語言,應用廣泛。c語言的設計目標是提供一種能以簡易的方式編譯、處理低階儲存器、產生少量的機器碼以及不需要任何執行環境支援便能執行的程式語言。

15樓:匿名使用者

k++,就是你下一次用到k的時候已經被+1了,int k=0;k++; int a = k;//這個時候k是1了(附:比方說i=0,y=i++,這時i自增,y還是0,下次再用時i=1,與之相近的有字首++i,表示式y=++i為1,下次用時i也增到1)

16樓:匿名使用者

++叫作自增運算子k++或++k在某些時候等價於k=k+1; 但在有些時候就會不一樣例如:int i,j;j=2;i=j++;執行完上面的三條語句後i=2,j=3,這裡i=2是有原因的,因為當++在後面時整個表示式(j++)的值是變數的原值,即2,而i=j++是將整個後面的j++這個表示式的值賦給i,不是將j的值賦給i。int i,j;j=2;i=++j;執行完上面的三條語句後i=3,j=3,這裡i=3是因為當++在前面時整個表示式的值為變數執行自加後的值。

17樓:匿名使用者

先將k的所有位依次取反,然後再求上一步的數除以2的餘數,最後判斷這個餘數是否等於1

一句話說,是判斷k的非除以2所得的餘數是否等於1

18樓:匿名使用者

++k單獨用等價於k=k+1;混合用如做為陣列下標使用(a[++k]),

等價於k=k+1,然後認為表示式++k的值為新k。

k++單獨用跟++k是一樣的;混合用如做為陣列下標使用(a[k++]),

等價於認為表示式k++的值不變,是老k;然後陣列a使用表示式的值老k獲得元素

a[k]的值xx。然後,做k=k+1。

也就是說混合用時,表示式本身雖一,卻蘊含了兩個操作;——但其實單獨用時也蘊含了同樣

兩個操作。只不過單獨用時,表示式自身的值被捨棄。

19樓:匿名使用者

即是k=k+1;自增運算

計算機c語言中k++和++k在什麼情況有區別

20樓:寧靜の樂章

這麼給你解釋吧。前置遞增++k這個表示式執行兩步,將k自加一,然後返回的結果是改變後的k。

而後置的k++第一步是自加一,但是第二步返回的結果是改變之前的k的拷貝值。

21樓:萢萢

輸出、傳引數、賦值給別的變數等時有區別。

c語言m++&&k++與k++&&m++有什麼不同?

22樓:匿名使用者

對&&操作如果發現前面的邏輯運算值為0,則不再進行後面的操作,直接認為整個式子值為0.

另外,x++運算的優先順序相當低,甚至低於賦值運算,故先執行&&運算在執行++運算

23樓:匿名使用者

一樣的,你的試卷上的答案恰恰也說明是一樣的

c語言題目,int k=0,則下列選項四個表示式中與其他三個值不同的是

24樓:

題目是說表示式值與其它三個不同的是,而不是考試是否是賦值語版句:

假設k=5

k++表示式的值權是k原始的值5

k+=1表示式的值是k的新值6

++k表示式的值是k的新值6

k+1表示式的值是6(這裡雖然k的值沒有改變,但是表示式的值是6)

25樓:匿名使用者

這四個選項都屬於表示式,都有自己的值,哪怕是a = 5,這整個式子的值也是5,所以b = a = 5;就相當於b = (a = 5);。k++是表回達式的值等於k之前的舊值,然後再增加1,++k是先增加,再返回新值作為整體表示式的值所以a和c是不一樣的, 而d選項很明顯是1,所以就答選a,表示式的值是0。

26樓:西河下街頭

路過。。。。前人之述備矣

計算機C語言中,K與k有什麼區別

k 和 k 只是數值符號有區別,操作在這裡是一樣的。不過 操作有個特別的地方需要注意,放在變數前後的效果是有點不同,特別用在表示式裡面的時候。k 和 k 不一樣,看下面的例子 int i 4 printf ni d n i printf ni d n i i 4 printf ni d n i pr...

起亞k5與雪鐵龍c5比拼,起亞K5和雪鐵龍C5哪個好那一款更適合家用

c5 外觀時尚 沉穩低調,頭燈犀利,起到點睛之筆。表示進門容易碰頭。內飾設計比較簡單,中控臺設計簡潔大方,儀表盤採用自發光功能。發動機起步比較肉,提速加速比較快,高速行駛側傾較小,檔位清晰,比較安靜。操控效能優良,底盤紮實,過彎側傾較小,尾部靈活,方向盤指向精準。安全配置豐富,在c ncap的碰撞測...

c語言,int與void不同點,在C語言中,int 函式與void 函式有什麼區別

一 指代不復 同1 int 是一種資料類制型,在程式語言中 bai,是用於定義整數類 du型變數zhi的識別符號。2 void 無類dao型 常用在程式編寫中對定義函式的引數型別 返回值 函式中指標型別進行宣告。二 特點不同 1 int 除了int型別之外,還有short long long lon...