注册 登录
编程论坛 C++教室

求教矩阵初始化

龙门阵 发布于 2014-10-07 20:37, 375 次点击
程序代码:

#include<iostream>
#include <ctime>
using namespace std;

 typedef struct A{

 int i;

 int j;

 int **k;
}max;
void init(int q ,int w, A &T)
{
    T.i=q;
    T.j=w;
    int i,n=0;
    T.k=(int**)malloc(w*sizeof(int*));//*申请空间*//
        for(i=0;i<w;i++)
        {
            T.k[i]=(int*)malloc(q*sizeof(int));
        }
    for(i=0;i<q;i++)
    {
        for(n=0;n<w;n++)
   
        {
T.k[i][n]=rand()%100;        
        }
}
}
void printf( int q, int w, A &T)
{
    int a,b,i=0;
    for(a=0; a<T.i; a++)
{
    for(b=0;b<T.j;b++)
{
    cout<<T.k[a][b]<<"\t";  
}
     cout<<endl;
}
}
void main()
{
srand(time(NULL));

 A max;
int q,w,e,r;

 cout<<"行数"<<endl;

 cin>>q;

 cout<<"列数"<<endl;

 cin>>w;

 init (q,w,max);

 

 printf(q,w,max);
}

q是行数,w是列数,我想输入行数,列数然后输出随机数矩阵,编译时没问题,但是,如果输入的q大于w时就出问题,q小于w就没事,应该是init这出了问题,但是就是不知道哪里出问题。
0 回复
1