#include "stdio.h"
#include "stdlib.h"
int **matrixAdd(int x1[][3],int x2[][3],int row,int col)
{
int **a=NULL;
int i,j;
a=(int **)malloc(row*sizeof(int *));
for(i=0;i a[i]=(int *)malloc(col*sizeof(int)); for(i=0;i for(j=0;j a[i][j]=x1[i][j]+x2[i][j]; return a; } int main() { int a[2][3]={{1,2,3},{4,5,6}}; int b[2][3]={{11,12,13},{14,15,16}}; int ** result=NULL; int i,j; result=matrixAdd(a,b,2,3); for(i=0;i<2;i++) { for(j=0;j<3;j++) printf("%d ",result[i][j]); printf("\n"); } free(result); result=NULL; } 结果:
int* addMetrix(int *a, int *b, int n) { int i, len = n * n, res*; res = (int*)calloc(len, sizeof(int)); for(i = 0; i < len; i++) res[i] = a[i] + b[i]; return res; } //n是矩阵的维数,设方阵是n*n的