1樓:
後面少了個」)「。
*p1[3]是3元素int型指標陣列,經for(i=0;i<3;i++) p1[i]=&p[6-3*i];後存放的內容是:p1[0]=&p[6](即7的位址),p1[1]=&p[3](即4的位址),p1[2]=&p[0](即1的位址);p2是二級指標,它經p2=p1+2;指向了p1[2]的位址&p1[2]。現在看輸出。
輸出共有i=1和i=2兩行。
第一行,i=1時:
然後,p2=p2-1;。
所以第一行輸出8,4。
第二行,i=2時:你照貓畫虎自己分析一下吧,太麻煩了……
2樓:匿名使用者
第一排輸出:
*(++p1[i]+2)+1
= (++p1[i])[2]+1
=p1[i][2+1]+1
=p1[i][3]+1
輸出,p1[1][3]+1 = p[3+3]+1=7+1=8
p1[2][3]+1 = p[0+3]+1=4+1=5
說明:for(i=0;i<3;i++) p1[i]=&p[6-3*i];將
第二排輸出:
第一次執行
*((*p2--+1)+2) // 最裡面() 和 -- 去掉
= *(*p2+1+2) // 最外面的* ,指標運算轉換成
= (*p2)[3]
= (*(p1+2)[3]
= p1[2][3]
= p[0+3] = 4
第二次執行 :p2=p1+2-1;
*((*p2--+1)+2)
= (*p2)[3]
= (*(p1+1))[3]
= p1[1][3] // 又因為:前面*(++p1[1]+2)+1 中++p1[1] 的運算 改變了原p1[1]的指向位址 。
=(++p1[1])[3]
=p1[1][3+1]
=p1[1][4]
=p[3+4] = 8
程式執行列印輸出
8,45,8
3樓:匿名使用者
printf語句少加了乙個括號
4樓:
輸出結果為:
8,45,8
.以下程式執行時,輸出結果的第一行是 ,第二行是 。
5樓:白狐
首先,要知道change(x,y)函式是把十進位制數x轉換成y進製的數並輸出。然後就可以看main()函式了。第一行是把十進位制數10轉換成2進製數:
10=1010然後printf("\n")是換行,change(10,8)是吧十進位制數10轉換成8進製數:10=12所以輸出結果是:
1010 //第一行輸出
12 //第二行輸出
6樓:匿名使用者
第一行:1010
第二行:12
第一行5 4 3 2第二行6 7 8 9第三行13 12
一 個數判斷 第一行1個,符合公式1 2 1 1 第二行3個,符合公式2 2 1 3,第 三 四行為5,7個,符合公式3 2 1 5,符合公式4 2 1 7,推出個數的通用公式表示式 n 2 1 二 每行收尾數判斷 1至4行收尾數分別為 1,4,9,16,符合公式 第一行序數1的平方,1,奇行為負,...
在裡如何批量調換第一行和第二行的內容
淡淡的雅興 在word中,縮小第一行與第二行的間距的操作步驟 1 選中需要調整的文字 2 單擊開始選項卡右下角如圖所示的按鈕 3 彈出段落對話方塊,在行距處,選擇固定值,在其後面的輸入框中,輸入所需要的數值即可,如圖所示。 編輯 替換 查詢內容 0 9 1 127 13 0 9 1 127 13 替...
矩陣a為3 3的 第一行51 0 第二行 2 3 1第三
由 ax b 2x 得 a 2e x b a 2e,e 3 1 0 1 0 0 2 1 1 0 1 0 2 1 4 0 0 1 r1 r2,r3 r2 得 1 0 1 1 1 0 2 1 1 0 1 0 0 0 5 0 1 1 r2 2r1,r3 1 5 得 1 0 1 1 1 0 0 1 3 2 ...