数据结构实验10——稀疏矩阵
2015-01-27 10:17
309 查看
#include <stdio.h> #include <stdlib.h> #define Num 125 typedef struct Triple { int i,j; int e; }Triple; typedef struct TS { Triple data[Num]; int mu,nu,tu; }TS; void CreateTS(TS *M) { int s; printf("1、请输入稀疏矩阵的行数、列数、非零元素的个数:\n"); scanf("%d%d%d",&M->mu,&M->nu,&M->tu); for(s=1;s<=M->tu;s++) scanf("%d%d%d",&M->data[s].i,&M->data[s].j,&M->data[s].e); } void Transport(TS M,TS *T) { int a,b,k; T->mu=M.nu; T->nu=M.mu; T->tu=M.tu; k=1; for(a=1;a<M.nu;a++) for(b=1;b<=M.tu;b++) if(a==M.data[b].j) { T->data[k].e=M.data[b].e; T->data[k].j=M.data[b].i; T->data[k].i=M.data[b].j; k++; } } void Display(TS T) { int a; printf("****************************************\n"); printf("mu=%d\tnu=%d\ttu=%d\n",T.mu,T.nu,T.tu); printf("****************************************\n"); for(a=1;a<=T.tu;a++) printf("%d\t\t%d\t\t%d\t\n",T.data[a].i,T.data[a].j,T.data[a].e); printf("****************************************\n"); } int main() { TS T,M,N,S; CreateTS(&T); CreateTS(&M); printf("2、稀疏矩阵T的输出:\n"); Display(T); printf("2、稀疏矩阵N的输出:\n"); Display(M); printf("3、稀疏矩阵T的转置运算成功!\n"); Transport(T,&S); printf("3、稀疏矩阵M的转置运算成功!\n"); Transport(M,&N); printf("4、稀疏矩阵T的转置输出:\n"); Display(S); printf("4、稀疏矩阵M的转置输出:\n"); Display(N); return 0; }
相关文章推荐
- 数据结构实验10——稀疏矩阵
- SDUTOJ(3348)数据结构实验之数组二:稀疏矩阵
- 数据结构实验之数组二:稀疏矩阵
- 数据结构实验之数组二:稀疏矩阵
- 数据结构实验之数组二:稀疏矩阵
- 数据结构实验之数组二:稀疏矩阵
- 数据结构实验之数组二:稀疏矩阵
- 数据结构实验之数组二:稀疏矩阵
- 数据结构实验之数组二:稀疏矩阵
- SDUT 3348 数据结构实验之数组二:稀疏矩阵
- SDUTACM 数据结构实验之数组二:稀疏矩阵
- 数据结构实验之数组二:稀疏矩阵
- 数据结构实验之数组二:稀疏矩阵
- 数据结构实验之数组二:稀疏矩阵
- 数据结构实验之数组二:稀疏矩阵
- SDUT 3348 数据结构实验之数组二:稀疏矩阵
- [数据结构实验:稀疏矩阵]
- 数据结构实验之数组二:稀疏矩阵
- 数据结构实验之数组二:稀疏矩阵
- sdutacm-数据结构实验之数组二:稀疏矩阵