在c中生成随机矩阵

时间:2012-11-27 17:00:35

标签: c matrix row

所以我得到了矩阵中每行的最大值找到程序,现在如何生成随机矩阵,例如:n长度和m高度?

#include <stdlib.h>
#include <stdio.h>
void max_per_row( double *result, 
                      double matrix[][3], 
                      const int xmax, 
                      const int ymax)
{
int x=0, y=0;

 for(y=0; y < ymax; y++)
    result[y]=y;
for(y=0; y < ymax; y++)
{
    for(x=0; x < xmax; x++)
    {
        if ( matrix[y][x] > result[y] )
            result[y]=matrix[y][x];
    }
}
}

int main(int argc, char **argv)
{
double test1[3][3]={ {-10, -20, 0},
                     {-13, 0,  13},
                     {-99, 99.99, 100.01}};
double result[10]={0};
int y=0;
max_per_row(result, test1, 3, 3 );
for(y=0; y < 3 ; y++)
    printf("max row %d = %f\n", y, result[y]);
return 0;
}

1 个答案:

答案 0 :(得分:1)

int main()
{
    int random[3][3];
    int i, o;

    srand(time(NULL));
    for(o = 0; o<3; o++)
        for(i = 0; i<3; i++)
            random[o][i] = rand();
    return 0;
}

那就行了。如果您想要特定的数据子集,可以在%的输出上使用rand()运算符,例如:

rand() % 10; // generates a random number 0-9