问题描述
- 二级指针创建二维数组
-
1) 编写函数CreateMatrix( int **a,int n, int m),生成一个n行、m列的矩阵,矩阵中的元素由随即函数rand()生成(范围1~99)。
解决方案
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
void CreateMatrix( int **a,int n, int m)
{
int i,j;
a = (int**)malloc(n*sizeof(int*));
for( i=0; i<n; i++)
{
a[i] = (int*)malloc(n*sizeof(int));
}
srand( (unsigned)time( NULL ) );
for( i=0; i<n; i++)
{
for( j=0; j<m; j++)
{
a[i][j] = rand()%99+1;
}
}
}
解决方案二:
二级指针与二维数组
C++ 二级指针和二维数组
二维数组和二级指针
解决方案三:
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
void CreateMatrix( int **a,int n, int m)
{
int i,j;
a = new int *[n];
for( i=0; i<n; i++)
{
a[i] = new int[m];
}
srand( (unsigned)time( NULL ) );
for( i=0; i<n; i++)
{
for( j=0; j<m; j++)
{
a[i][j] = rand()%99+1;
}
}
}
时间: 2024-10-30 16:45:37