将动态分配的二维数组当作实参输入函数的C语言代码
时间: 2023-04-05 15:03:56 浏览: 156
详解C语言用malloc函数申请二维动态数组的实例
5星 · 资源好评率100%
以下是将动态分配的二维数组当作实参输入函数的C语言代码:
```c
#include <stdio.h>
#include <stdlib.h>
void input(int **arr, int rows, int cols) {
int i, j;
for (i = 0; i < rows; i++) {
for (j = 0; j < cols; j++) {
scanf("%d", &arr[i][j]);
}
}
}
int main() {
int rows, cols, i, j;
printf("Enter the number of rows and columns: ");
scanf("%d %d", &rows, &cols);
// allocate memory for the 2D array
int **arr = (int **)malloc(rows * sizeof(int *));
for (i = 0; i < rows; i++) {
arr[i] = (int *)malloc(cols * sizeof(int));
}
// input values into the array
printf("Enter the elements of the array:\n");
input(arr, rows, cols);
// print the array
printf("The array is:\n");
for (i = 0; i < rows; i++) {
for (j = 0; j < cols; j++) {
printf("%d ", arr[i][j]);
}
printf("\n");
}
// free the memory allocated for the array
for (i = 0; i < rows; i++) {
free(arr[i]);
}
free(arr);
return 0;
}
```
阅读全文