C語言二維數(shù)組如何交換兩行或者兩列?
方法有很多:

1、可以直接找到數(shù)組對(duì)應(yīng)行的元素,進(jìn)行交換數(shù)據(jù),改變原數(shù)組內(nèi)容。
2、可以定義指針數(shù)組指向每行的首地址,交換指針地址,按順序打印每個(gè)指針為首的行數(shù)據(jù),得到數(shù)據(jù)交換效果,原數(shù)組內(nèi)容不變。我這里用第2種方法給你寫了一個(gè),你參考吧。#include int main (){ int nArry[4][4]={{1,2,3,4},{2,3,4,5},{3,4,5,6},{4,5,6,7}}; int *p[4],i,j,*psave,index[2];//p[]分別指向每行首地址 printf("打印原數(shù)組:"); i=16; p[0]=&nArry[0][0]; while(i-->0) { if((i+1)%4==0) printf("\n"); printf("%d ",*(p[0])); p[0]++; } while(1) { printf("\n\n輸入2個(gè)你要交換的行號(hào):"); scanf("%d%d",&index[0],&index[1]); for(i=0;i<4;i++) { p[i]=&nArry[i][0]; } psave=p[index[0]-1]; p[index[0]-1]=p[index[1]-1]; p[index[1]-1]=psave; printf("第%d行和第%d行調(diào)換后的數(shù)組為:\n",index[0],index[1]); for(i=0;i<4;i++) //按順序打印 首地址指針開頭的行數(shù)字 { for(j=0;j<4;j++) { printf("%d ",*(p[i]+j)); } printf("\n"); } } return 0;}
寫一函數(shù),使給定的一個(gè)二維數(shù)組(3*3)轉(zhuǎn)置,即行列互換?
void Trans(int *matrix[][]){ for(int i=0;i<3;i++) for(int j=0;j
到此,以上就是小編對(duì)于java二維數(shù)組行列互換的方法是什么意思的問題就介紹到這了,希望這2點(diǎn)解答對(duì)大家有用。
分享名稱:java二維數(shù)組行列互換的方法是什么
網(wǎng)頁URL:
http://www.dlmjj.cn/article/djeohce.html