没有合适的资源?快使用搜索试试~ 我知道了~
使用三元组存储一个稀疏矩阵,编写函数实现稀疏矩阵的输入,稀疏矩阵的输出,稀疏矩阵的转置,两个稀疏矩阵的加法。
资源推荐
资源详情
资源评论
#include<malloc.h>
#include<iostream>
using namespace std;
typedef struct {
int row, col;
int data;
}TruNode;
#define MAX_NUM 1024
typedef struct {
int rows, cols;
int num;
TruNode datas[MAX_NUM];
} TRUMATRIX;
TRUMATRIX* InputMatrix(TRUMATRIX*A);
void Output(TRUMATRIX*A);
int ElementMatrix(TRUMATRIX *pMtr, int row, int col);
TRUMATRIX* AddMatrix(TRUMATRIX *pMtr1, TRUMATRIX *pMtr2, TRUMATRIX *pMtr3);
TRUMATRIX* TransMatrix(TRUMATRIX *pMtr1, TRUMATRIX *pMtr2);
TRUMATRIX* Init();
void main()
{
TRUMATRIX*A = Init();
TRUMATRIX*B = Init();
TRUMATRIX*C = Init();
int row, col, data;
int op;
#include<iostream>
using namespace std;
typedef struct {
int row, col;
int data;
}TruNode;
#define MAX_NUM 1024
typedef struct {
int rows, cols;
int num;
TruNode datas[MAX_NUM];
} TRUMATRIX;
TRUMATRIX* InputMatrix(TRUMATRIX*A);
void Output(TRUMATRIX*A);
int ElementMatrix(TRUMATRIX *pMtr, int row, int col);
TRUMATRIX* AddMatrix(TRUMATRIX *pMtr1, TRUMATRIX *pMtr2, TRUMATRIX *pMtr3);
TRUMATRIX* TransMatrix(TRUMATRIX *pMtr1, TRUMATRIX *pMtr2);
TRUMATRIX* Init();
void main()
{
TRUMATRIX*A = Init();
TRUMATRIX*B = Init();
TRUMATRIX*C = Init();
int row, col, data;
int op;
while (1)
{
cout << "1:输入矩阵 2:输出矩阵 3:矩阵的加法 4:取矩阵元素 5:矩阵转置 0:退出" << endl;
cin >> op;
switch (op)
{
case 1:
A = InputMatrix(A);
Output(A);
break;
case 2:
Output(A);
break;
case 3:
B = InputMatrix(B);
C = AddMatrix(A, B, C);
Output(C);
break;
case 4:
cout << "请输入所取元素的行和列" << endl;
cin >> row >> col;
data = ElementMatrix(A, row, col);
cout << "该元素为:" << data << endl;
break;
case 5:
B = TransMatrix(A, B);
Output(B);
break;
case 0:
return;
{
cout << "1:输入矩阵 2:输出矩阵 3:矩阵的加法 4:取矩阵元素 5:矩阵转置 0:退出" << endl;
cin >> op;
switch (op)
{
case 1:
A = InputMatrix(A);
Output(A);
break;
case 2:
Output(A);
break;
case 3:
B = InputMatrix(B);
C = AddMatrix(A, B, C);
Output(C);
break;
case 4:
cout << "请输入所取元素的行和列" << endl;
cin >> row >> col;
data = ElementMatrix(A, row, col);
cout << "该元素为:" << data << endl;
break;
case 5:
B = TransMatrix(A, B);
Output(B);
break;
case 0:
return;
剩余5页未读,继续阅读
资源评论
XS_
- 粉丝: 67
- 资源: 23
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功