// 稀疏矩阵计算器.cpp : 定义控制台应用程序的入口点。
//
#include "stdafx.h"
#define MAXSIZE 12500
#define OK 1
typedef int ElemType;
typedef int Status;
typedef struct{
int i,j;
ElemType e;
}Triple;
typedef struct{
Triple data[MAXSIZE+1];
int mu,nu,tu;
}TSMatrix;
Status inputTSMatrix(TSMatrix *M){
printf("Please followed by M.mu M.nu M.tu\n");
scanf("%d %d %d",&M->mu,&M->nu,&M->tu);
for(int x=0;x<M->tu;x++)
{
printf("Please followed by M->data[%d].i,M->data[%d].j,M->data[%d].e\n",x,x,x);
scanf("%d %d %d",&M->data[x].i,&M->data[x].j,&M->data[x].e);
}
return OK;
}
Status MatrixAddition(TSMatrix *M,TSMatrix *T,TSMatrix *A){
int i=0,j=0,z=0;
A->mu=M->mu;
A->nu=M->nu;
A->tu=0;
while(i<M->tu&&j<T->tu){
if(M->data[i].i<T->data[j].i){
A->data[z].i=M->data[i].i;
A->data[z].j=M->data[i].j;
A->data[z].e=M->data[i].e;
z++;
i++;
}
else if(M->data[i].i>T->data[j].i){
A->data[z].i=T->data[j].i;
A->data[z].j=T->data[j].j;
A->data[z].e=T->data[j].e;
z++;
//
#include "stdafx.h"
#define MAXSIZE 12500
#define OK 1
typedef int ElemType;
typedef int Status;
typedef struct{
int i,j;
ElemType e;
}Triple;
typedef struct{
Triple data[MAXSIZE+1];
int mu,nu,tu;
}TSMatrix;
Status inputTSMatrix(TSMatrix *M){
printf("Please followed by M.mu M.nu M.tu\n");
scanf("%d %d %d",&M->mu,&M->nu,&M->tu);
for(int x=0;x<M->tu;x++)
{
printf("Please followed by M->data[%d].i,M->data[%d].j,M->data[%d].e\n",x,x,x);
scanf("%d %d %d",&M->data[x].i,&M->data[x].j,&M->data[x].e);
}
return OK;
}
Status MatrixAddition(TSMatrix *M,TSMatrix *T,TSMatrix *A){
int i=0,j=0,z=0;
A->mu=M->mu;
A->nu=M->nu;
A->tu=0;
while(i<M->tu&&j<T->tu){
if(M->data[i].i<T->data[j].i){
A->data[z].i=M->data[i].i;
A->data[z].j=M->data[i].j;
A->data[z].e=M->data[i].e;
z++;
i++;
}
else if(M->data[i].i>T->data[j].i){
A->data[z].i=T->data[j].i;
A->data[z].j=T->data[j].j;
A->data[z].e=T->data[j].e;
z++;