c语言将一个二维数组的行列互换 c语言:二维数组行列互换

C\u8bed\u8a00\uff0c\u5c06\u4e00\u4e2a\u4e8c\u7ef4\u6570\u7ec4a\u7684\u884c\u548c\u5217\u7684\u5143\u7d20\u4e92\u6362\uff0c\u5b58\u5230\u53e6\u4e00\u4e2a\u4e8c\u7ef4\u6570\u7ec4b\u4e2d\u3002\u5217\u5982 123 1 4 2 5 456 3 6

\u770b\u6765\u4f60\u662f\u4e2a\u8d85\u7ea7\u5c0f\u83dc\u9e1f\u554a,\u89e3\u6790\u6ce8\u4e0a\u4e86,\u6162\u6162\u5b66\u4e60\u5427
main()
{ int a[2][3]={{1,2,3},{4,5,6}};
int b[3][2],i,j;
printf("array a:\n"); //\u53cc\u5f15\u53f7\u91cc\u7684\u662f\u5b57\u7b26\u4e32\u63d0\u793a\u4fe1\u606f,\u4f5c\u7528\u662f\u5728\u5c4f\u5e55\u4e0a\u663e\u793a\u63d0\u793a
for(i=0;i<=1;i++) //\u5916\u5faa\u73afi\u904d\u5386a\u6570\u7ec4\u7684i\u884c
{
for(j=0;j<=2;j++) //\u5185\u5faa\u73afj\u662f\u5728i\u884c\u904d\u5386\u8be5\u884c\u6240\u6709\u7684\u6570\u7ec4\u5143\u7d20
{
printf("%5d",a[i][j]);
b[j][i]=a[i][j]; //\u8fd9\u4e2a\u5c31\u662f\u8fdb\u884c\u884c\u5217\u8f6c\u6362\u7684\u5173\u952e\u8bed\u53e5 \u5982 b[2][1]=a[1][2]
}
printf("\n");
}
printf("array b:\n"); //\u8fd9\u4e2a\u4e5f\u662f
for(i=0;i<=2;i++)
{
for(j=0;j<=1;j++)
printf("%5d",b[i][j]); //\u8f93\u51fa\u8f6c\u6362\u540eb\u6570\u7ec4\u7684\u7ed3\u679c
printf("\n");
}

\u7531\u4e8e\u884c\u3001\u5217\u4e0d\u786e\u5b9a\uff0c\u6240\u4ee5\u8981\u52a8\u6001\u5904\u7406\u3002\u4e3e\u4f8b\u4ee3\u7801\u5982\u4e0b\uff1a
//#include "stdafx.h"//If the vc++6.0, with this line.#include "stdio.h"#include "stdlib.h"int main(void){ int **a,**b,m,n,i,j; while(1){//\u4fdd\u8bc1\u8f93\u5165\u7684\u884c\u3001\u5217\u6570\u4e3a\u6b63\u6570 printf("Please enter m & n(int m>0,n>0)...\n"); if(scanf("%d%d",&m,&n),m>0 && n>0) break; printf("Error, redo: "); } a=(int **)malloc((j=sizeof(int))*m); b=(int **)malloc(j*n); if(a==NULL || b==NULL){ printf("Application memory failure...\n"); exit(0); } for(i=0;i<m;i++) if((a[i]=(int *)malloc(j*n))==NULL){ printf("Failed to create the array...\n"); exit(0); }for(i=0;i<n;i++) if((b[i]=(int *)malloc(j*m))==NULL){ printf("Failed to create the array...\n"); exit(0); } for(i=0;i<m;i++) for(j=0;j<n;scanf("%d",a[i]+j++)); printf("\n"); for(i=0;i<n;i++){ for(j=0;j<m;j++) printf("%d ",b[i][j]=a[j][i]);//a\u7684\u884c\u3001\u5217\u4e92\u6362\u540e\u5b58\u5165b printf("\n"); } for(i=0;i<m;free(a[i++])); free(a); for(i=0;i<n;free(b[i++])); free(b); return 0;}

int y[2][3]={
    {1,2,3},
    {4,5,6},
};
int index[2][3]={
    {0x00,0x01,0x10},
    {0x11,0x20,0x21},
};
int x[3][2];
int i,i1,temp;
for(i=0;i<2;i++){
    for(i1=0;i1<3;i1++){
        temp=index[i][i1];
        x[temp>>4][temp&0xf]=y[i][i1];
    }
}


用函数void fun(int *a, int *b, int NX, int NY);
NX,NY 是行列,列行。NX*NY 等于元素总个数。
#include<stdio.h>

void fun(int *a, int *b, int NX, int NY){
int i;
for (i=0;i<NX*NY;i++) b[i]=a[i];
}
int main()
{
int a[2][3]={{1,2,3},{4,5,6}};
int b[3][2];
int i,j;
fun(&a[0][0], &b[0][0], 2, 3);
for (j=0;j<3;j++)
{
for (i=0;i<2;i++)printf("%d ",b[j][i]);
printf("\n");
}
return 0;
}

  • 鍦c璇█涓鎬庢牱鐢浜岀淮鏁扮粍杩涜姹夊瓧琛屽拰鍒楃殑浜掓崲
    绛旓細姹夊瓧鍦ㄦí鍚戜笂鏄袱涓瓧绗︿负涓涓鍗曚綅鐨勶紝骞朵笖姣忎釜瀛楃鐨凙SCII鐮侀兘澶т簬127 include<stdio.h> void main(){ char ccstr[3][8]={ "涓浜屼笁","鍥涗簲鍏","涓冨叓涔" },ccstr1[3][8]; int i,j,n,k; n=3; for ( i=0;i<n;i++ ) printf("%s\n",ccstr[i]); printf("\n");...
  • 鐢ㄦ寚閽堝鐞:缂栧啓涓鍑芥暟,灏嗕竴涓3*3鐨勬暣鍨浜岀淮鏁扮粍杞疆,鍗琛屽垪浜掓崲
    绛旓細include<stdio.h> void main(){ void switchArray(int[3][3]);int array[][3]={{1,2,3},{4,5,6},{7,8,9}};int i,j;int(*pToArray)[3];pToArray=array;switchArray(pToArray);return 0;} void switchArray(int array[][3]){ int newArray[3][3],(*pTArr)[3],(*pT...
  • 缂栧啓绋嬪簭,瀹炵幇鐭╅樀杞崲,鍗冲皢涓涓 m琛宯鍒楃殑鐭╅樀琛屽拰鍒椾簰鎹
    绛旓細鍦C璇█涓鍋囪鍘鏁扮粍涓篴锛浜掓崲琛屽垪鍚庣殑鏁扮粍涓篵锛歮ain(){ int a [2][3]={{1,2,3},{4,5,6}};int b [3][2],i,j;printf("Array a:\n");for (i=0;i<=1;i++){ for(j=0;j<=2;j++){ printf("%5d",a[i][j]);b[j][i]=a[i][j];} printf("\n");} printf...
  • c璇█鏁扮粍琛屽垪浜掓崲闂
    绛旓細include<stdio.h> void main(){ int a[2][3]={{1,2,3},{4,5,6}};int b[3][2],i,j;printf("array a:\n");for(i=0;i<=1;i++){ for(j=0;j<=2;j++){ printf("%d",a[i][j]);b[j][i]=a[i][j];} printf("\n");} printf("array b:\n");//鎷彿鍐呬綘...
  • ...灏哸鐨勮鍜屽垪鐨勫厓绱浜掓崲鍚庡瓨鍒板彟涓涓簩缁存暟缁勪腑銆傛眰鏁欍傘
    绛旓細for(j=0;j<3;++j) { b[j][i] = a[i][j]; } } printf("b鏁扮粍鐨鍐呭涓猴細\n"); for(i=0;i<3;++i) { for(j=0;j<2;++j) { printf("%d ",b[i][j]);
  • 鎮ㄥソ~鎬庝箞鏍风敤C璇█缂栧啓涓涓瀹炵幇鐭╅樀((3琛3鍒)鐨勮浆缃,鍗琛屽垪浜掓崲
    绛旓細include <stdio.h> int fun(int array[3][3]){ int i,j,temp;for(i=0;i<3;i++){ for(j=i;j<3;j++){ temp=array[i][j];array[i][j]=array[j][i];array[j][i]=temp;} } return 0;} int main(){ int i,j;int array[3][3]={{100,200,300}, {400,500,600}...
  • ...3鍒楃殑鐭╅樀瀹炵幇琛屽垪浜掓崲銆(鎻愮ず:瀹氫箟涓涓簩缁存暟缁,鍦ㄧ▼搴忎腑璧嬪,杈撳嚭...
    绛旓細main(){ int t,i,j,r[3][3]={{1,2,3},{7,8,9}};for(i=0;i<2;i++){ for(j=i;j<3;j++){t=r[i][j];r[i][j]=r[j][i];r[j][i]=t;} } for(i=0;i<3;i++){ for(j=0;j<2;j++)printf("%d ",r[i][j]);printf("\n");} } ...
  • C璇█,浣涓涓3*3鐨鏁扮粍杞疆,鍗琛屽垪浜掓崲
    绛旓細include <stdio.h>int main(){int a[3][3], b, c, d;for (b = 0; b<3; b++)for (c = 0; c<3; c++)scanf("%d",&a[b][c]);printf("\n");for (b = 0; b<3; b++)for (c = b+1; c<3; c++){d = a[b][c];a[b][c] = a[c][b];a[c][b] = ...
  • c璇█杈撳叆涓涓涓よ涓夊垪鐭╅樀,灏嗗叾琛屽垪浜掓崲鍚,灏嗗師鐭╅樀鍜屼簰鎹㈠悗鐭╅樀杈撳嚭...
    绛旓細include<stdio.h>#include<math.h>int main(){int i,j,a[2][3],b[3][2]; for(i=0;i<2;i++) for(j=0;j<3;j++) {scanf("%d",&a[i][j]); b[j][i]=a[i][j]; } printf("\n"); for(i=0;i<2;i++) {for(j=0;j<3;j++) printf("%4d"...
  • ...缂栧啓涓涓鍑芥暟,瀹炵幇n闃舵柟闃电殑杞疆(鍗琛屽垪浜掓崲)鎬ユユ!!!鎰熻阿_鐧惧害鐭...
    绛旓細include <stdio.h> include <stdlib.h> int main(){ int a[3][3]={1,2,3,4,5,6,7,8,9};int j,i,temp;for(i=0;i<3;i++)for(j=0;j<3;j++)scanf("%d",&a[i][j]);for(i=1;i<2;i++)for(j=0;j<=i;j++){ temp=a[i][j];a[i][j]=a[j][i];a[j...
  • 扩展阅读:二维数组a[3][4] ... 将二维数组的行列互换 ... 二维数组的行与行交换 ... 二维数组行列互换解析 ... c语言2 3数组行列互换 ... 二维数组转置c语言 ... 二维数组行列怎么看 ... java创建一个二维数组 ... c语言二维数组对应行列 ...

    本站交流只代表网友个人观点,与本站立场无关
    欢迎反馈与建议,请联系电邮
    2024© 车视网