该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
#include "stdio.h"
#include "stdlib.h"
#define MAXSIZE 12500 //假设非零元个数最大值为12500
typedef struct {
int i,j; //该非零元的行列值
int e;
}Triple;
typedef struct {
Triple data[MAXSIZE+1]; // 非零元三元组表,data[0]未用
int rpos[MAXSIZE]; // 各行第一个非零元的位置表
int mu,nu,tu; //矩阵的行数列数和非零元个数
}RLSMatrix;
void multSMatrix(RLSMatrix M,RLSMatrix N,RLSMatrix *Q)
{
int arow,brow,ccol;
int p,q,t,tp;
int *ctemp;
if(M.nu!=N.mu){printf("出错:");exit(1);}
Q->mu=M.mu;Q->nu=N.nu;Q->tu=0;
ctemp=(int*)malloc((N.nu+1)*sizeof(int));
if(M.tu*N.tu)
{
for(arow=1;arow<=M.mu;++arow)
{
for(ccol=1;ccol<=N.nu;ccol++) ctemp[