加粗样式
什么是矩阵
矩阵,简单的来看,就是二维数组。二维数组本质上是以数组作为数组元素的数组,即“数组的数组”,类型说明符 数组名[常量表达式][常量表达式]。二维数组又称为矩阵,行列数相等的矩阵称为方阵。
代码实现
三元组以及普通转置
矩阵以及三元组的结构体
#include<stdio.h>
#include<malloc.h>
#define MAXSIZE 12500
typedef struct
{
int i,j;//该非零元的列下标和行下标
int e;
}Triple;
typedef struct
{
Triple data[MAXSIZE+1];//非零元三元组表,data[0]未用
int mu,nu,tu;//矩阵的行数、列数和非零元个数
}TSMatrix;
相应功能的函数实现
初始化稀疏矩阵
int InitTriple(TSMatrix *M)
{
//稀疏矩阵的初始化
int i,j,k,n,e;
printf("请输入稀疏矩阵非零元素的个数:\n");
scanf("%d",&n);
M->tu=n;
printf("//按顺序从0到%d输入\n",M->mu);
for(k=1;k<=n;k++)
{
printf("请输入第%d个元素的行、列和赋值\n",k);
scanf("%d %d %d",&i,&j,&e);
if(i==1&&j==1)
{
M->data[k].i