“Linux-2018-spring-main”的版本间的差异

来自SUDA-HLT
跳到导航 跳到搜索
(创建页面,内容为“#include <stdio.h> int my_matrix3(int n, int d) { int i, j, k, l; int **_pp = (int **)malloc(sizeof(int*)*n); _pp[0] = (int*) malloc(sizeof(int)*n*d); for (l...”)
 
第1行: 第1行:
#include <stdio.h>
+
  #include <stdio.h>
  
int my_matrix3(int n, int d) {
+
  int my_matrix3(int n, int d) {
int i, j, k, l;
+
  int i, j, k, l;
int **_pp = (int **)malloc(sizeof(int*)*n);
+
  int **_pp = (int **)malloc(sizeof(int*)*n);
_pp[0] = (int*) malloc(sizeof(int)*n*d);
+
  _pp[0] = (int*) malloc(sizeof(int)*n*d);
for (l = 1; l < n; l++) {
+
  for (l = 1; l < n; l++) {
_pp[l] = &_p[l*d];
+
  _pp[l] = &_p[l*d];
}
+
  }
for (i = 0; i < n; i++) {
+
  for (i = 0; i < n; i++) {
for (j = 0; j < d; j++) {
+
  for (j = 0; j < d; j++) {
_pp[i][j] = i*j;
+
  _pp[i][j] = i*j;
}
+
  }
}
+
  }
for (k = 0; k < n*d; ++k) {
+
  for (k = 0; k < n*d; ++k) {
printf("%d ", _p[k]);
+
  printf("%d ", _p[k]);
if ((k+1) % d == 0) printf("\n");
+
  if ((k+1) % d == 0) printf("\n");
}
+
  }
free(_p);
+
  free(_p);
free(_pp);
+
  free(_pp);
}
+
  }
  
  

2018年6月19日 (二) 07:48的版本

 #include <stdio.h>
 int my_matrix3(int n, int d) {

int i, j, k, l; int **_pp = (int **)malloc(sizeof(int*)*n); _pp[0] = (int*) malloc(sizeof(int)*n*d); for (l = 1; l < n; l++) { _pp[l] = &_p[l*d]; } for (i = 0; i < n; i++) { for (j = 0; j < d; j++) { _pp[i][j] = i*j; } } for (k = 0; k < n*d; ++k) { printf("%d ", _p[k]); if ((k+1) % d == 0) printf("\n"); } free(_p); free(_pp);

 }


int my_matrix2(int n, int d) { int *_p = (int*) malloc(sizeof(int)*n*d); int **_pp = (int **)malloc(sizeof(int*)*n); int i, j, k, l; for (l = 0; l < n; l++) { _pp[l] = &_p[l*d]; } for (i = 0; i < n; i++) { for (j = 0; j < d; j++) { _pp[i][j] = i*j; } } for (k = 0; k < n*d; ++k) { printf("%d ", _p[k]); if ((k+1) % d == 0) printf("\n"); } free(_p); free(_pp); }

int my_matrix(int n, int d) { int *_p = (int*) malloc(sizeof(int)*n*d); int i, j, k; for (i = 0; i < n; i++) { for (j = 0; j < d; j++) { _p[i*d+j] = i*j; } } for (k = 0; k < n*d; ++k) { printf("%d ", _p[k]); if ((k+1) % d == 0) printf("\n"); } free(_p); }

int main() { my_matrix(3, 4); my_matrix2(3, 4); }