⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 3-2.c

📁 数据结构用C语言实现
💻 C
字号:
#include "stdio.h"
#define MaxSize 10000 //由用户定义
typedef int DataType; //由用户定义
typedef struct { //三元组
  		int i,j;//非零元的行、列号
    	DataType v; //非零元的值
}TriTupleNode;
typedef struct{ //三元组表
   TriTupleNode data[MaxSize]; //三元组表空间
   int m,n,t; //矩阵的行数、列数及非零元个数
}TriTupleTable; 
void TransMatrix(TriTupleTable *b,TriTupleTable *a)
{//*a,*b是矩阵A、B的三元组表表示,求A转置为B
	int p,q,col;
    b->m=a->n; b->n=a->m; //A和B的行列总数互换
    b->t=a->t; //非零元总数
    if(b->t<=0)
	{
		printf("A=0"); //A中无非零元,退出
		exit(1);
	}
	q=0;
	for(col=0;col<a->n;col++) //对A的每一列
		for(p=0;p<a->t;p++) //扫描A的三元组表
			if(a->data[p].j==col){ //找列号为col的三元组
				b->data[q].i=a->data[p].j;
				b->data[q].j=a->data[p].i;
				b->data[q].v=a->data[p].v;
				q++;
			}
} 
void main()
{
	TriTupleTable a,b;
	TransMatrix(&a,&b);
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -