Пример #1
0
void main(){
	#define R 4//定义行数
	#define C 5//定义列数
	#define A 7//定义值
	crossList *M = (crossList*)malloc(sizeof(crossList));
	crossList *T = (crossList*)malloc(sizeof(crossList));//存储M的转置矩阵
	crossList *Q = (crossList*)malloc(sizeof(crossList));//存储M*T
	int i,j,k;
	int arr[A][2] = { {1,2}, {1,5}, {2,2}, {3,1}, {3,4}, {4,1}, {4,5} }; 
	elemType val[A] = {3,-5,-1,6,8,-4,7};
	//初始化矩阵
	initSMatrix(M,R,C,A);
	
	//矩阵的赋值
	for(i=0;i<A;i++){
		assignSMatrix(M, arr[A-i-1][0], arr[A-i-1][1], val[A-i-1]);
	}
	printf("Print the Sparse Matrix M:");
	printSMatrix(M);
	
	//矩阵的复制
	copySMatrix(M,T);
	printf("\nPrint the Sparse Matrix T:");
	printSMatrix(T);
	
	//求矩阵的转置矩阵
	transposeSMatrix(M,T);
	printf("\nPrint the transpose Matrix T:");
	printSMatrix(T);
	
	//求矩阵的乘积
	multSMatrix(M,T,Q);
	printf("\nPrint the transpose Matrix M * T:");
	printSMatrix(Q);
}
Пример #2
0
//Ï¡Êè¾ØÕó²âÊÔ
void testRLSMatrix()
{
	RLSMatrix<int> A,B,C,D,E,F;
	createSMatrix(A);
	printSMatrix1(A);
	createSMatrix(B,2);
	printSMatrix1(B);
	addSMatrix(A,B,C);
	printSMatrix1(C);
	destroySMatrix(C);
	multSMatrix(A,B,C);
	printSMatrix1(C);
	transposeSMatrix(C,D);
	printSMatrix1(D);
	createSMatrix(E,3);
	printSMatrix1(E);
}