若已定義int a,則表示式a 10,a 10,a 的值為

時間 2021-08-30 09:42:35

1樓:匿名使用者

答案為10。

解題過程如下:

a=10,a+10,a++是一個逗號表示式,逗號表示式的規則是什麼第一表示式計算起,直到計算最後一個表示式,最後一個表示式的值是逗號表示式的值。

先計算a=10,值等於10,變數a也被賦10的值。再計算a+10,的值為20.最後計算a++得值為10,a得值為11.但整個表示式的值為10。

主要特點如下:

(1)簡潔的語言

c語言包含的各種控制語句僅有9種,關鍵字也只有32 個,程式的編寫要求不嚴格且以小寫字母為主,對許多不必要的部分進行了精簡。實際上,語句構成與硬體有關聯的較少,且c語言本身不提供與硬體相關的輸入輸出、檔案管理等功能,如需此類功能,需要通過配合編譯系統所支援的各類庫進行程式設計,故c語言擁有非常簡潔的編譯系統。

(2)具有結構化的控制語句

c語言是一種結構化的語言,提供的控制語句具有結構化特徵,如for語句、if⋯else語句和switch語句等。可以用於實現函式的邏輯控制,方便麵向過程的程式設計。

2樓:

逗號表示式是從前往後執行(即整個表示式的值由最後一個式子決定)也就是說本題先執行了a=10,然後執行a++,而a++是先把a的值作為表示式的值,然後將a的值加1,所以最後題中語句的值為10而a的值變為了11

3樓:匿名使用者

明明是10 上機一試就知道了 a++是先用a後+

4樓:匿名使用者

是10,++a才是11

設先有定義:int a=10;則表示式(++a)+(a--)的值為 為啥 a--是11呢

5樓:匿名使用者

++a先於表示式執行,a--表示式計算完成後才執行。

a+=a*a

a+=10*10

a=a+100=10+100=110

6樓:藤子源靜香

先算(++a),a變為11.然後算(a--),因為(a--)是先將a代入計算,然後a減1.所以11加11是22

7樓:藍狐魅影

a=10;a+=a *a ;a=200 ;

a=a*a=10*10=100;

a+=a;a=a+a=100+100=200;

望採納~

已知定義int a 2,則表示式a a a a a的值是

這個表示式無意義,編譯器會給出警告資訊。該表示式的值與編譯器相關 非要執行,看一下這句在gcc給出的反彙編 0x401476 mov eax,0x1 0x40147b sub eax,dword ptr esp 0xc 0x40147f mov edx,dword ptr esp 0xc 0x401...

若有定義 int a則表示式a a的值為9請高手說明下這個過程

倒黴熊 二維陣列是按行儲存的也就是如下這樣 a 0 0 a 0 1 a 0 2 a 0 3 a 1 0 a 1 1 a 1 2 a 1 3 a 2 0 a 2 1 a 2 2 a 2 3 而a表示的就是a 0 0 所在的地址。所以 a 2 1 a的值為9。 陽光上的橋 請你在草稿紙上畫一個三行 四列...

C語言題求問已知int a 23,2,1則表示式「a」的值是 B

首先a 0 0 3 a 0 1 2 a 0 2 1 而且都是int整型,所以結果也是整型3 2 1 1 請叫我路人已 3 2排放是 a 0 0 a 0 1 a 1 0 a 1 1 a 2 0 a 2 1 首先 a 0 0 3 a 0 1 2 a 0 2 1 因此 3 2 1 1 1 1 a 0 0 ...