资源简介
矩阵的运算,包含加法、数乘、两个矩阵相乘。在kile环境下编写,单片机编程直接可用。C编写。包含h文件和C文件。

代码片段和文件信息
#include “Matrix.h“
/*---------------------------------------------------------------------------------------------------
函数名称:Matrix_Add
输入参数:*A_Matrix:相加矩阵A的指针
*A_Matrix:相加矩阵B的指针
*A_Matrix:求和矩阵C的指针
返回参数:1:成功 2:矩阵格式不正确
函数功能:两个矩阵相加
----------------------------------------------------------------------------------------------------*/
uint8_t Matrix_Add(Matrix_Struct *A_MatrixMatrix_Struct *B_MatrixMatrix_Struct *C_Matrix)
{
uint16_t ij;
if((A_Matrix->Row!=A_Matrix->Row)||(A_Matrix->Line!=A_Matrix->Line)) return 0;
C_Matrix->Row=A_Matrix->Row;
C_Matrix->Line=A_Matrix->Line;
for(i=0;i<(A_Matrix->Row);i++)
{
for(j=0;j<(A_Matrix->Line);j++)
{
C_Matrix->data[i][j]=A_Matrix->data[i][j]+B_Matrix->data[i][j];
}
}
return 1;
}
/*---------------------------------------------------------------------------------------------------
函数名称:Matrix_Num_Mulltiplication
输入参数:*A_Matrix :相加矩阵A的指针
num :要进行数乘的数值
返回参数:1:成功 2:矩阵格式不正确
函数功能:矩阵的数乘运算
----------------------------------------------------------------------------------------------------*/
uint8_t Matrix_Num_Mulltiplication(Matrix_Struct *A_Matrixint16_t num)
{
uint16_t ij;
if((A_Matrix->Row==0)||(A_Matrix->Line==0)) return 0;
for(i=0;i<(A_Matrix->Row);i++)
{
for(j=0;j<(A_Matrix->Line);j++)
{
A_Matrix->data[i][j]=A_Matrix->data[i][j]*num;
}
}
return 1;
}
/*---------------------------------------------------------------------------------------------------
函数名称:Matrix_Mullt_Matrix
输入参数:*A_Matrix:相加矩阵A的指针
*B_Matrix:相加矩阵B的指针
*C_Matrix:矩阵相乘后得到矩阵C的指针
返回参数:1:成功 2:矩阵格式不正确
函数功能:矩阵的乘法运算
----------------------------------------------------------------------------------------------------*/
uint8_t Matrix_Mullt_Matrix(Matrix_Struct *A_MatrixMatrix_Struct *B_MatrixMatrix_Struct *C_Matrix)
{
uint16_t c_rowc_linei;
if(A_Matrix->Line!=B_Matrix->Row) return 0;
for(c_row=0;c_rowRow;c_row++) //矩阵C的第n行
{
for(c_line=0;c_line<(B_Matrix->Line);c_line++) //矩阵C的第m列
{
for(i=0;iRow;i++)
{
C_Matrix->data[c_row][c_line]+=A_Matrix->data[c_row][i]+A_Matrix->data[i][c_line]; //矩阵C的第n行第m列有A矩阵的第n行元素和B矩阵的第m列元素的乘积相加
}
}
}
C_Matrix->Row=A_Matrix->Row;
C_Matrix->Line=B_Matrix->Line;
return 1;
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 518 2016-12-20 00:10 Matrix.h
文件 2606 2016-12-20 00:35 Matrix.c
相关资源
- C语言编程常见问题解答.pdf
- 操作系统c语言模拟文件管理系统844
- C语言开发实战宝典
- C++中头文件与源文件的作用详解
- C语言代码高亮html输出工具
- 猜数字游戏 c语言代码
- C语言课程设计
- 数字电位器C语言程序
- CCS FFT c语言算法
- 使用C语言编写的病房管理系统
- 通信过程中的RS编译码程序(c语言)
- 计算机二级C语言上机填空,改错,编
- 用回溯法解决八皇后问题C语言实现
- 简易教务管理系统c语言开发文档
- 操作系统课设 读写者问题 c语言实现
- 小波变换算法 c语言版
- C流程图生成器,用C语言代码 生成C语
- 3des加密算法C语言实现
- 简单的C语言点对点聊天程序
- 单片机c语言源程序(51定时器 八个按
- 个人日常财务管理系统(C语言)
- c语言电子商务系统
- 小甲鱼C语言课件 源代码
- 将图片转换为C语言数组的程序
- C语言实现的一个内存泄漏检测程序
- DES加密算法C语言实现
- LINUX下命令行界面的C语言细胞游戏
- 用单片机控制蜂鸣器播放旋律程序(
- 学校超市选址问题(数据结构C语言版
- 电子时钟 有C语言程序,PROTEUS仿真图
评论
共有 条评论